ChatGPT 人工智能 GPT4 伦理 生成式 医疗 监管 安全 机器学习 深度学习 神经网络 计算机视觉 强化学习 模型 算法 应用 开发 研究 工具 平台 框架 数据集 训练 部署 安全 合规 培训 投资 LLM,llm AI,ai,Ai 大模型 大语言模型 制图 生图 绘图 文生图 文生视频 生成式AI AGI 世界模型 sora chatGPT,chatgpt,ChatGpt claude openai Llama deepseek midjourney 红熊猫模型 Red panda,panda Stable Diffusion,StableDiffusion,stable DALL- E 3 DALL E DALL Flux,flux 扩散模型 混元大模型 文心一言 通义千问 可灵 Pika PixelDance 豆包 月之暗面 零一万物 阶跃星辰 搜索增强 MiniMax Talkie Agent prompt fastai LangChain TTS 微调 提示词 知识库 智能体
# 热门搜索 #
搜索
OpenAI assistant API 简介
4673点击    2023-11-17 22:26

OpenAI assistant API 在代码解释和知识检索方面颠覆了AI Agent领域。


assistant API的代码解释器功能是一个强大的工具,能够从代码执行生成各种文件类型,如图片和 CSV 文件。例如,当创建图像图表时,开发者可以通过助手消息响应中的 file_id 字段轻松访问它。这种无缝集成方便了生成内容的下载,无需额外操作。


想象一个场景,代码解释器将 CSV 文件的行进行随机排序。API 不仅执行这一操作,还提供直接下载链接。



知识检索功能通过使 API 能够利用外部信息源来增强助手 API。这可能包括从专有产品详细信息到用户提供的文档。过程很简单:一旦上传了文件,OpenAI 将其分块、索引并存储,实现矢量搜索以检索用户查询的相关内容。


启用这个功能就像在助手的创建参数中包含 retrieval 工具一样简单。API 通过在调用期间将所有相关内容纳入模型上下文来优化质量,实现了详细响应与高效模型使用之间的平衡。


assistant API 凭借其在助手和线程级别管理文件的能力而脱颖而出,支持多种格式,如 PDF、文档和电子表格。检索系统能够处理高达 512MB 的文件,确保即使是最全面的文档也可以被处理。


在助手 API 中调用函数增加了额外的复杂性。通过在助手中定义函数,API 可以根据用户消息智能地调用这些函数及其相应的参数。这导致了一种动态的、互动的体验,其中 API 响应了它认为必要的函数调用,几乎就像与一个知识渊博的同事对话。


想象一个用户需要当前天气信息的场景。API 的 getCurrentWeather 函数可以被触发,促使助手请求必要的数据。助手暂停运行,等待函数执行,收到输出后继续任务。这是并行函数调用的实际操作,展示了如何同时处理多个函数以实现全面的用户体验。


知识检索通过将外部数据源纳入其响应来扩展 AI 的视野。这个过程始于上传文件并将其整合到助手的知识库中:


file = client.files.create(
file=open("knowledge.pdf", "rb"),
purpose='assistants'
)


上传文件后,可以创建具有启用检索工具的助手:


assistant = client.beta.assistants.create(
instructions="You are a customer support chatbot. Use your knowledge base to best respond to customer queries.",
model="gpt-4-1106-preview",
tools=[{"type": "retrieval"}],
file_ids=[file.id]
)



这个功能允许助手利用丰富的信息源,为复杂查询提供精确的答案。


助手 API 通过函数调用将互动提升到新的水平。定义助手将使用的函数:


assistant = client.beta.assistants.create(
instructions="You are a weather bot. Use the provided functions to answer questions.",
model="gpt-4-1106-preview",
tools=[{
"type": "function",
"function": {
"name": "getCurrentWeather",
"description": "Get the weather in location",
"parameters": {
"type": "object",
"properties": {
"location": {"type": "string", "description": "The city and state e.g. San Francisco, CA"},
"unit": {"type": "string", "enum": ["c", "f"]}
},
"required": ["location"]
}
}
}, {
"type": "function",
"function": {
"name": "getNickname",
"description": "Get the nickname of a city",
"parameters": {
"type": "object",
"properties": {
"location": {"type": "string", "description": "The city and state e.g. San Francisco, CA"},
},
"required": ["location"]
}
}
}]
)


通过提交函数输出来完成运行:


run = client.beta.threads.runs.submit_tool_outputs(
thread_id=thread.id,
run_id=run.id,
tool_outputs=[
{
"tool_call_id": call_ids[0],
"output": "22C",
},
{
"tool_call_id": call_ids[1],
"output": "LA",
},
]
)



OpenAI 的assistant API 测试版是一个强大的工具,提供了在代码解释和知识检索方面前所未有的能力。它直观的设计,加上强大的功能,使用户能够轻松、精确地自动化复杂任务。



文章来自 “知乎”,作者 superpeng 互联网行业 算法工程师




关键词: assistant API , AI Agent
AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
智能体

【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。

项目地址:https://github.com/Significant-Gravitas/AutoGPT


【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。

项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md

2
知识库

【开源免费】FASTGPT是基于LLM的知识库开源项目,提供开箱即用的数据处理、模型调用等能力。整体功能和“Dify”“RAGFlow”项目类似。很多接入微信,飞书的AI项目都基于该项目二次开发。

项目地址:https://github.com/labring/FastGPT