引言
在AI和数据驱动的时代,访问高质量的数据源对构建智能应用至关重要。Kay.ai 提供了一个强大的API,使开发者可以实时检索详细的数据集,如美国公司的SEC文件和新闻稿。在这篇文章中,我们将探索如何使用Kay.ai的API有效检索数据,为您的AI应用提供支持。
主要内容
安装和设置
首先,我们需要安装Kay的Python包:
!pip install kay
接下来,获取API密钥,并将其设置为环境变量 KAY_API_KEY。访问 kay.ai 免费获取您的API密钥。
KayAiRetriever的使用方法
KayAiRetriever是一个强大的工具,能够从不同的数据集中检索信息。您可以指定数据集ID和数据类型以及需要的文档数量。
from getpass import getpass
import os
from langchain_community.retrievers import KayAiRetriever
# 设置API密钥
KAY_API_KEY = getpass() # 输入API密钥
os.environ["KAY_API_KEY"] = KAY_API_KEY
# 创建检索器
retriever = KayAiRetriever.create(
dataset_id="company",
data_types=["10-K", "10-Q", "PressRelease"],
num_contexts=3
)
# 使用API代理服务提高访问稳定性
docs = retriever.invoke(
"What were the biggest strategy changes and partnerships made by Roku in 2023?"
)
检索结果的处理
一旦我们成功调用了API,就可以获得详细的文档信息。上述代码将返回2023年Roku公司在战略变更和合作伙伴关系方面的详细信息。
代码示例
以下是一个完整的代码示例,演示如何使用Kay.ai的API进行数据检索:
from langchain.chains import ConversationalRetrievalChain
from langchain_openai import ChatOpenAI
# 设置OpenAI API密钥
OPENAI_API_KEY = getpass() # 输入OpenAI API密钥
os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY
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")
常见问题和解决方案
常见问题1:API访问受限
在某些地区,由于网络限制,API访问可能会受到阻碍。解决方案是使用API代理服务来提高访问的稳定性。
常见问题2:数据类型检索不准确
确保提供的数据类型和数据集ID是有效的,并根据需求调整 num_contexts 参数以获取更多或更少的文档。
总结和进一步学习资源
Kay.ai为开发者提供了强大的数据检索能力,是构建智能AI应用的理想选择。想要深入学习,可以查看以下资源:
参考资料
结束语:如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---