Kor 开源项目教程
korA Golang Tool to discover unused Kubernetes Resources 项目地址:https://gitcode.com/gh_mirrors/kor/kor
项目介绍
Kor 是一个用于从文本中提取结构化数据的工具,它利用大型语言模型(LLMs)来实现这一目标。Kor 提供了一种简单的方法来定义提取数据的架构,并通过提供示例来生成提示,然后将这些提示发送给指定的 LLM 并解析输出结果。Kor 与 LangChain 框架集成,使得开发人员可以更容易地构建基于自然语言的 API。
项目快速启动
安装
首先,确保你已经安装了 Python 3.8 或更高版本。然后,通过 pip 安装 Kor:
pip install kor
示例代码
以下是一个简单的示例,展示如何使用 Kor 从文本中提取结构化数据:
from langchain.chat_models import ChatOpenAI
from kor import create_extraction_chain, Object, Text
# 初始化 LLM
llm = ChatOpenAI(
model_name="gpt-3.5-turbo",
temperature=0,
max_tokens=2000,
model_kwargs={
'frequency_penalty': 0,
'presence_penalty': 0,
'top_p': 1.0
}
)
# 定义提取架构
schema = Object(
id="player",
description=(
"用户正在控制一个音乐播放器来选择歌曲、暂停或开始它们,或者播放音乐"
),
attributes=[
Text(
id="action",
description="用户想要执行的操作,例如播放、暂停或停止",
required=True
)
]
)
# 创建提取链
chain = create_extraction_chain(llm, schema)
# 提取数据
result = chain.invoke("停止音乐现在")
print(result["validated_data"])
应用案例和最佳实践
应用案例
- 音乐播放器控制:如上例所示,Kor 可以用于从自然语言命令中提取音乐播放器的操作。
- 订单处理:从用户输入中提取订单信息,例如商品名称、数量和地址。
- 客户服务:从客户查询中提取关键信息,以便快速响应。
最佳实践
- 清晰定义架构:确保你的提取架构清晰且详细,以便 LLM 能够准确理解并提取所需信息。
- 提供示例:在定义架构时,提供一些示例输入,这有助于 LLM 更好地理解你的需求。
- 测试和迭代:在实际应用中,不断测试和优化你的提取架构,以提高准确性和效率。
典型生态项目
Kor 与 LangChain 框架紧密集成,LangChain 提供了一系列工具和组件,帮助开发者构建复杂的语言模型应用。以下是一些与 Kor 相关的典型生态项目:
- LangChain:一个全面的框架,提供了一系列工具和组件,用于构建基于语言模型的应用。
- Promptify:一个用于生成和优化提示的工具,可以帮助你更好地与 LLM 交互。
- MiniChain:一个轻量级的框架,用于快速构建和部署基于语言模型的应用。
通过结合这些生态项目,你可以更高效地开发和部署基于 Kor 的应用程序。
korA Golang Tool to discover unused Kubernetes Resources 项目地址:https://gitcode.com/gh_mirrors/kor/kor