You need to enable JavaScript to run this app.
文档中心
向量数据库VikingDB

向量数据库VikingDB

复制全文
下载 pdf
切片(Point)
add_point
复制全文
下载 pdf
add_point
概述

add_point 用于新增知识库下文档的一个切片。

请求参数
参数类型必选默认值备注
CollectionNamestring否--知识库名称

ProjectName

string

否

default

知识库所属项目,获取方式参见文档API 接入与技术支持
若不指定该字段,则操作 default 项目下的知识库。
若需要操作指定项目下的知识库,需正确配置该字段。

ResourceID

string

否

--

知识库唯一 ID
可通过创建知识库接口的返回值或知识库列表接口获取

  • 可选择直接传 ResourceID,或同时传 CollectionName 和 ProjectName 作为知识库的唯一标识

DocID

string

是

--

新增切片所属的文档 ID
可通过文档上传结果或文档列表接口获取

  • 不存在时会报错。

ChunkType

string

是

--

要添加的切片类型

  • 和知识库支持的类型不匹配时会报错
  • 结构化知识库:“structured”,
  • 非结构化知识库:
  • “text”: 纯文本切片
  • “faq”: faq 类型切片

Content

*string

否

--

新增切片文本内容
当 ChunkType 为 text、faq 时必传
1、text:Content 对应切片原文内容
2、faq:Content 对应答案字段内容

ChunkTitle

*string

否

--

切片标题
只有非结构化文档支持修改切片的标题。

Question

*string

否

--

新增 faq 切片中的问题字段
当 ChunkType 为 faq 时必传

  • 字段长度范围为 [1, {Embedding模型支持的最大长度}]

Fields

[]map[string]interface{}

否

--

表示传入的结构化数据
当 ChunkType 为 structured 时必传。
[
{ "field_name": "xxx", // 字段名称
"field_value": xxxx // 字段值
}
]

  • field_name 必须已在所属知识库的表字段里配置,否则会报错
  • 和文档导入时的向量字段长度校验保持一致,拼接后的做 embedding 的文本长度不超过 65535
响应消息
字段类型参数说明
Codeint状态码
Messagestring返回信息
RequestIDstring标识每个请求的唯一标识符
Data*PointAddResultPointAddResult

PointAddResult

字段类型参数说明
CollectionName*string知识库的名字
ResourceID*string知识库唯一标识
Project*string项目名
DocID*string文档 id
ChunkID*int64切片在文档下的 id,文档下唯一
PointID*string切片 id,知识库下唯一
请求示例

首次使用知识库 SDK ,可参考 使用说明
本示例演示了知识库 Go SDK 中 AddPoint 函数的基础使用方法,使用前需配置 API Key 鉴权参数。
将 <YOUR_COLLECTION_NAME> 和 <YOUR_DOC_ID> 分别替换为控制台中的知识库名称及已导入文档的文档 ID,将示例保存为 main.go 后运行 go run main.go。

package main

import (
    "context"
    "encoding/json"
    "fmt"
    "os"
    "time"

    "github.com/volcengine/vikingdb-go-sdk/knowledge"
    "github.com/volcengine/vikingdb-go-sdk/knowledge/model"
)

func main() {
    var (
       apiKey    = os.Getenv("VIKINGDB_API_KEY")
       endpoint  = "https://api-knowledgebase.mlp.cn-beijing.volces.com"
       region    = "cn-beijing"
    )

    client, err := knowledge.New(
       knowledge.AuthAPIKey(apiKey),
       knowledge.WithEndpoint(endpoint),
       knowledge.WithRegion(region),
       knowledge.WithTimeout(time.Second*30),
    )
    if err != nil {
       fmt.Printf("New client failed, err: %v\n", err)
       return
    }
    ctx := context.Background()

    collection := client.Collection(model.CollectionMeta{
       CollectionName: "<YOUR_COLLECTION_NAME>",
       ProjectName:    "default",
    })

    content := "example content"
    chunkTitle := "example chunk title"

    resp, err := collection.AddPoint(ctx, model.AddPointRequest{
       DocID:      "<YOUR_DOC_ID>",
       ChunkType:  "text",
       Content:    &content,
       ChunkTitle: &chunkTitle,
    })
    if err != nil {
       fmt.Printf("AddPoint failed, err: %v\n", err)
       return
    }

    jsonData, _ := json.Marshal(resp)
    fmt.Printf("Response: %s\n", string(jsonData))
}
最近更新时间:2026.09.08 20:33:17
这个页面对您有帮助吗?
有用
有用
无用
无用