引言
在现代的AI应用中,拥有高质量的上下文信息至关重要。Kay API提供了一种便捷的方法,通过将最前沿的模型和快速检索技术结合在一起,帮助开发者获取高质量的数据集嵌入。本篇文章将带您详细了解如何使用Kay API来获取关于美国公司的SEC文件和新闻稿等数据,以提升AI的上下文获取能力。
主要内容
Kay API简介
Kay API是一个为RAG(Retrieval-Augmented Generation)应用设计的接口,它能够在零基础设施的情况下,快速检索高质量的上下文数据。当前,Kay API支持检索美国公司的SEC文件和新闻稿等数据集。
初始化与设置
使用Kay API需要首先安装相应的Python包,并获取一个API密钥。
!pip install kay
要获取API密钥,您可以前往 kay.ai 注册。在获取密钥后,需要将其设置为环境变量:
import os
from getpass import getpass
KAY_API_KEY = getpass("Enter your Kay API key: ")
os.environ["KAY_API_KEY"] = KAY_API_KEY
使用Kay API检索数据
Kay API提供了 KayAiRetriever
类,您可以利用它的静态 create()
方法来检索数据。以下是一个完整的示例:
from langchain_community.retrievers import KayAiRetriever
# 使用API代理服务提高访问稳定性
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(f"Title: {doc.metadata['title']}\nContent: {doc.page_content}\n")
整合到LLM对话链
您还可以将Kay API与大语言模型(LLM)的对话检索链结合使用,例如在OpenAI的GPT-3.5-turbo中应用:
from langchain.chains import ConversationalRetrievalChain
from langchain_openai import ChatOpenAI
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")
常见问题和解决方案
访问限制问题
由于某些地区可能存在网络限制,开发者在使用Kay API时可能需要通过API代理服务来提高访问的稳定性。
数据集类型选择
Kay API支持多种数据类型的检索,在选择数据类型时,应根据具体的应用场景选择适合的类型。
总结和进一步学习资源
通过阅读本文,您应该能够利用Kay API来显著提升AI系统的数据检索能力。为了进一步加深理解,建议查阅Kay API的官方文档,以及相关的Python编程和API代理服务资料。
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---