未提供项目描述
项目描述
LaunchKit
LaunchKit是一个开源库,使开发者能够创建和管理基于Python的工具,这些工具可以增强GPT聊天机器人的功能。它将您的Python代码转换为大型语言模型(LLMs)如OpenAI的GPT可以理解和使用的格式,这得益于由代码的类型注解驱动的JSON模式生成。
使用Pydantic,LaunchKit读取代码的结构和细节,确保机器人可以正确地与您的工具交互。这个过程在您的函数和聊天机器人之间提供了清晰、可强制执行的合约,使您的机器人更加健壮且易于维护。
使用Launchkit,您可以
- 创建机器人可以使用基于Python的工具。
- 与您的机器人交谈并在本地测试函数。
- 将升级后的机器人部署到Discord、Slack和Telegram等频道。(通过MissionControl)
玩具示例
from launchkit import LaunchKit
def add(a: int, b: int):
"""Adds two numbers together."""
return a + b
# async functions are also supported
async def fetch_today_weather():
"""Gets today's weather."""
await some_async_function()
return {
"temperature": 20,
"humidity": 50
}
tools = LaunchKit([add, fetch_today_weather])
tools.openai_tools() # list of tools in OpenAI format - ready to be sent to the API.
在终端中本地与您的机器人交谈
launchkit module_name:tools
入门
-
安装PDM
-
创建一个新项目
mkdir my_project
cd my_project
pdm init --copier gh:missioncontrolai/template
pdm install
- 测试它
pdm test # run tests
pdm dev # talk with your bot
- 部署它(通过MissionControl)
git init
git add .
git commit -m "Initial commit"
- 在github上创建一个新仓库并将其推送到它。
- 创建一个Discord机器人并保存令牌。
- 前往https://www.missioncontrolbot.com/并添加您的仓库。
第一步
创建函数
def add(a: int, b: int): # use a descriptive name and type annotations
"""Adds two numbers together.""" # add a docstring
return a + b
[!注意]
- 函数的名称将被用作工具的名称。文档字符串将被用作工具的描述。
- 使用类型注解(更多关于类型)来帮助机器人理解应该发送什么类型的数据到您的函数。
也支持异步函数
async def fetch_today_weather():
"""Gets today's weather."""
await some_async_function()
return {
"temperature": 20,
"humidity": 50
}
[!注意]
- 返回类型应该是可序列化为JSON的。
- 当返回字典时,请确保字段名称具有描述性。机器人将使用它们来生成更好的函数执行结果摘要。
将您的函数暴露给机器人
from launchkit import LaunchKit
tools = LaunchKit([add, fetch_today_weather])
测试
在终端中本地与您的机器人交谈
launchkit module_name:tools
为您的函数编写测试
def test_add():
assert add(1, 2) == 3
总结
- 使用描述性名称
- 添加文档字符串
- 使用类型注解
- 返回类型应可序列化为JSON
- 使用描述性字段名称的字典
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码分发
launchkit-0.1.6.tar.gz (4.5 kB 查看哈希值)
构建分发
launchkit-0.1.6-py3-none-any.whl (5.6 kB 查看哈希值)
关闭
launchkit-0.1.6.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b76d43b8fe67bbf6076fa40850b26795bb1ba581bc9c3df536cc56298f99e6e6 |
|
MD5 | ff1bae6cdde9fe3cd5e9e15d2d05a53a |
|
BLAKE2b-256 | a04e3749a81a0055e69fb853d756fa066fa0217d4f78a550629018679658e3a9 |
关闭
launchkit-0.1.6-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0ee32264cf694edf78c1f8ca78341e67d559fee849cdbe57478852688c7fb662 |
|
MD5 | 76c12c62ce8804f6b1fa08a84de44cd1 |
|
BLAKE2b-256 | 07b6a69a899d592b838308ae8354ce88a029aa75955b8f534281b35b900c2e01 |