创建一个新的记忆库,用于存储和管理特定场景下的记忆数据。支持用户自定义记忆库存储的事件类型和画像类型,用于匹配具体业务场景下的数据建模需求。每个记忆库都拥有独立的记忆结构,如果业务场景中的记忆抽象不同,应创建新的记忆库。
URL | /api/memory/collection/create | 统一资源标识符 |
|---|---|---|
请求方法 | POST | 客户端对记忆库服务器请求的操作类型 |
请求头 | Content-Type: application/json | 请求消息类型 |
Authorization: HMAC-SHA256 *** | 基于AK/SK生成的签名信息 |
说明
注:
参数名 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
CollectionName | String | 是 | 记忆库的唯一名称。只能使用英文字母、数字、下划线,并以英文字母开头。 |
ProjectName | String | 否 | 项目名称。默认为 default。 |
CollectionType | String | 否 | 记忆库的类型。默认为旗舰版。
|
CpuQuota | Integer | 否 | 选择旗舰版时必传。范围[1, 100]。不传则默认为1CU,即1核8G,可支撑100QPS和约400万条向量。CPU超额后将限流,内存超额后将自动扩容。 |
Description | String | 否 | 记忆库的描述信息,最多 10000 个字符。 |
BuiltinEventTypes | Array of String | 否 | 可选择内置提供的事件类型,可选值包括 "sys_event_v1",会基于该内置模板生成自定义的事件类型。详细介绍见本节末尾。默认值为空。 |
BuiltinProfileTypes | Array of String | 否 | 可选择内置提供的画像类型,可选值为 "sys_profile_v1",会基于该内置模板生成自定义的画像类型。详细介绍见本节末尾。 |
CustomEventTypeSchemas | Array of EventTypeSchema | 否 | 根据业务需求自定义的事件类型列表。 |
| String | 是 | 事件类型的唯一名称,例如 "customer_feedback", "learning_progress"。 |
| String | 是 | 事件类型的详细描述,最多 10000 个字符。 |
| Array of EventProperty | 是 | 构成此事件类型的属性列表。 |
| String | 是 | 属性名称,例如 score, total_interactions。 |
| String | 是 | 属性值的类型,可选值包括 ["int64", "list |
| String | 是 | 属性的详细描述,最多 10000 个字符。 |
| String | 否 | 事件模式版本号,默认为 "1"。 |
| String | 否 | 可选的校验表达式,用于验证事件内容的有效性,例如 "field_a == '1'"。 |
CustomProfileTypeSchemas | Array of ProfileTypeSchema | 否 | 用户自定义的画像类型模式列表。 |
| String | 是 | 画像类型的唯一名称,例如 user_profile, product_summary。 |
| String | 是 | 画像类型的详细描述,最多 10000 个字符。 |
| Array of ProfileProperty | 是 | 构成此画像类型的属性列表。 |
| String | 是 | 属性名称,例如 user_id, total_interactions。 |
| String | 是 | 属性值的类型,可选值包括 ["int64", "list |
| String | 是 | 属性的详细描述,最多 10000 个字符。 |
| AggregateExpression | 否 | 聚合表达式,定义此属性如何从关联的事件中聚合计算而来。 |
| String | 否 | 聚合操作符,例如 SUM、MAX、AVG、COUNT、LLM_MERGE。 |
| String | 否 | 参与聚合的事件类型名称。 |
| String | 否 | 参与聚合的事件类型中的属性名称。 |
| Boolean | 否 | 是否为画像的主键。默认为 false。 |
Version | String | 否 | 画像模式版本号,默认为 "1"。 |
Tags | Array of Tag | 否 | 标签,可用于资源管理和分账。 |
| String | 是 | 标签的键。 |
| String | 是 | 标签的值。 |
字段 | 类型 | 描述 |
|---|---|---|
ResponseMetadata | Object | 响应元数据信息。 |
| String | 操作类型。 |
| String | 服务区域,例如"cn-beijing"。 |
| String | 请求唯一标识符 |
| String | 服务名称,如"knowledge_base_server"。 |
| String | API版本号。 |
Result | Object | 实际业务数据。 |
| String | 创建成功的记忆库资源 ID。 |
import json import requests from volcengine.base.Request import Request from volcengine.Credentials import Credentials from volcengine.auth.SignerV4 import SignerV4 AK = "your AK" SK = "your SK" Domain = "api-knowledgebase.mlp.cn-beijing.volces.com" def prepare_request(method, path, ak, sk, data=None): r = Request() r.set_shema("http") r.set_method(method) r.set_host(Domain) r.set_path(path) if data is not None: r.set_body(json.dumps(data)) credentials = Credentials(ak, sk, 'air', 'cn-north-1') SignerV4.sign(r, credentials) return r def internal_request(method, api, payload, params=None): req = prepare_request( method = method, path = api, ak = AK, sk = SK, data = payload) r = requests.request(method=req.method, url="{}://{}{}".format(req.schema, req.host, req.path), headers=req.headers, data=req.body, params=params, ) return r path = '/api/memory/collection/create' playload = { 'CollectionName': "my_first_memory_collection", 'Description': "test description", 'BuiltinEventTypes': ["sys_event_v1",], 'BuiltinProfileTypes': ["sys_profile_v1"], } rsp = internal_request('POST', path, playload) print(rsp.json())
捕获对话中的所有重要事件。
属性名 | 数据类型 | 描述 |
|---|---|---|
summary | string | 基于字段内容编写的完整事实描述. |
基于原始对话更新的用户画像信息。
字段名 | 数据类型 | 描述 |
|---|---|---|
user_profile | string | 用户画像字段分为基础信息和兴趣偏好两类。基础信息包含生日、性别、年龄等 11 项内容,兴趣偏好涵盖人物、文学等 15 个领域; |