本文档提供了 PrivateGPT REST API 的全面参考,详细介绍了所有可用的端点、它们的参数、请求/响应格式和使用示例。有关可用 SDK 和客户端库的信息,请参阅SDK。
PrivateGPT 的 API 遵循 RESTful 原则,并在适当时设计得与 OpenAI API 类似。API 按以下主要功能领域组织
来源:fern/openapi/openapi.json1-1100
所有 API 端点都相对于 PrivateGPT 实例运行的基本 URL。
http://:8001默认情况下,PrivateGPT 不需要身份验证。但是,您可以通过在设置文件中设置相应的配置来启用身份验证。
给定一个提示,模型将返回一个预测的补全。此端点允许根据您摄入的文档进行上下文感知的响应。
请求体
参数
| 参数 | 类型 | 必填 | 默认 | 描述 |
|---|---|---|---|---|
| prompt | 字符串 | 是 | - | 用于生成补全的提示 |
| system_prompt | 字符串 | 否 | null | 影响模型行为的附加说明 |
| use_context | 布尔值 | 否 | false | 是否使用来自摄入文档的上下文 |
| context_filter | 对象 | 否 | null | 用于指定要用于上下文的文档的过滤器 |
| include_sources | 布尔值 | 否 | true | 是否在响应中包含源块 |
| 流 | 布尔值 | 否 | false | 是否流式传输响应 |
响应
来源:fern/openapi/openapi.json8-57
给定一系列对话消息,此端点将返回一个响应。与 OpenAI Chat API 类似,此端点支持多轮对话。
请求体
参数
| 参数 | 类型 | 必填 | 默认 | 描述 |
|---|---|---|---|---|
| messages | array | 是 | - | 具有角色和内容的message对象数组 |
| use_context | 布尔值 | 否 | false | 是否使用来自摄入文档的上下文 |
| context_filter | 对象 | 否 | null | 用于指定要用于上下文的文档的过滤器 |
| include_sources | 布尔值 | 否 | true | 是否在响应中包含源块 |
| 流 | 布尔值 | 否 | false | 是否流式传输响应 |
响应:与/v1/completions端点类似,响应格式为聊天补全。
来源:fern/openapi/openapi.json59-107
此端点根据提供的文本查询检索来自摄入文档的最相关块。这对于在知识库中查找特定信息非常有用。
请求体
参数
| 参数 | 类型 | 必填 | 默认 | 描述 |
|---|---|---|---|---|
| text | 字符串 | 是 | - | 用于匹配文档的查询文本 |
| context_filter | 对象 | 否 | null | 用于指定搜索文档的过滤器 |
| limit | 整数 | 否 | 10 | 返回块的最大数量 |
| prev_next_chunks | 整数 | 否 | 0 | 要包含在上下文中的前一个和下一个块的数量 |
响应
来源:fern/openapi/openapi.json110-149
摄入并处理文件,将其块存储以用作 completions 和 chunks API 中的上下文。
请求体
multipart/form-data 包含要摄入的文档的文件字段响应
来源:fern/openapi/openapi.json195-235
摄入并处理文本,将其块存储以用作上下文。
请求体
参数
| 参数 | 类型 | 必填 | 默认 | 描述 |
|---|---|---|---|---|
| file_name | 字符串 | 是 | - | 用于识别文本文档的名称 |
| text | 字符串 | 是 | - | 要摄入的文本内容 |
响应:与/v1/ingest/file端点类似。
来源:fern/openapi/openapi.json237-277
列出已摄入的文档,包括其文档 ID 和元数据。
响应:所有已摄入文档及其元数据的列表。
来源:fern/openapi/openapi.json279-298
删除指定的已摄入文档。
路径参数
| 参数 | 类型 | 必填 | 描述 |
|---|---|---|---|
| doc_id | 字符串 | 是 | 要删除的文档 ID |
响应:成功时为空对象。
来源:fern/openapi/openapi.json300-340
给定文本,此端点将返回摘要。如果指定,它可以使用来自已摄入文档的附加上下文。
请求体
参数
| 参数 | 类型 | 必填 | 默认 | 描述 |
|---|---|---|---|---|
| text | 字符串 | 否 | null | 要总结的文本 |
| use_context | 布尔值 | 否 | false | 是否使用来自摄入文档的上下文 |
| context_filter | 对象 | 否 | null | 用于指定要用于上下文的文档的过滤器 |
| instructions | 字符串 | 否 | null | 影响摘要的附加说明 |
| prompt | 字符串 | 否 | null | 用于摘要的自定义提示 |
| 流 | 布尔值 | 否 | false | 是否流式传输响应 |
响应
来源:fern/openapi/openapi.json342-382 private_gpt/server/recipes/summarize/summarize_router.py1-87
获取给定输入文本的向量表示。这些嵌入可用于语义搜索、聚类或其他机器学习任务。
请求体
参数
| 参数 | 类型 | 必填 | 默认 | 描述 |
|---|---|---|---|---|
| input | string 或 array | 是 | - | 要获取嵌入的文本 |
响应
来源:fern/openapi/openapi.json384-424
简单的端点,用于检查 API 是否正在运行。
响应
来源:fern/openapi/openapi.json426-447
下图说明了客户端如何为常见用例与 PrivateGPT API 进行交互
来源:fern/openapi/openapi.json8-446
API 返回标准的 HTTP 状态码来指示成功或失败
有关验证问题的错误响应遵循此格式
PrivateGPT 提供多种编程语言的客户端库,以简化 API 集成。这些 SDK 会自动与最新的 API 更改保持同步。
| 语言 | 状态 | 仓库 |
|---|---|---|
| TypeScript | 即将推出 | https://github.com/zylon-ai/privategpt-ts |
| Python | 即将推出 | https://github.com/zylon-ai/pgpt-python |
| Java | 进行中 | https://github.com/zylon-ai/private-gpt-java |
| Go | 进行中 | https://github.com/zylon-ai/private-gpt-go |
来源:fern/docs/pages/api-reference/sdks.mdx1-39
PrivateGPT API 尽可能地致力于保持向后兼容。新功能以不破坏现有客户端的方式添加。当前 API 版本已在 OpenAPI 架构中公开。
刷新此 Wiki
最后索引时间2025 年 4 月 18 日(b7ee43)