This commit is contained in:
2025-09-07 07:44:43 +08:00
parent f27f6e0baa
commit 5c7d8792ec
3 changed files with 64 additions and 8 deletions

View File

@@ -0,0 +1,56 @@
import json
import requests
from volcengine.base.Request import Request
from volcengine.Credentials import Credentials
from volcengine.auth.SignerV4 import SignerV4
from Config.Config import VOLC_ACCESSKEY, VOLC_SECRETKEY
AK = VOLC_ACCESSKEY
SK = VOLC_SECRETKEY
Domain = "api-knowledgebase.mlp.cn-beijing.volces.com"
def prepare_request(method, path, ak, sk, data=None):
r = Request()
r.set_shema("http") # 注意这里是 http
r.set_method(method)
r.set_host(Domain)
r.set_path(path)
if data is not None:
r.set_body(json.dumps(data))
# 使用 air 服务和 cn-north-1 区域
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/delete"
payload = {
"CollectionName": "emotional_support"
}
rsp = internal_request("POST", path, payload)
print(rsp.json())
if rsp.status_code == 200:
print("记忆库删除成功:", rsp.json())
else:
print("错误:", rsp.status_code, rsp.text)

View File

@@ -3,19 +3,19 @@ pip install volcengine
pip install --upgrade "volcengine-python-sdk[ark]"
"""
import json
import os
import threading
import time
from dotenv import load_dotenv
from volcengine.ApiInfo import ApiInfo
from volcengine.Credentials import Credentials
from volcengine.base.Service import Service
from volcengine.ServiceInfo import ServiceInfo
from volcengine.auth.SignerV4 import SignerV4
from volcengine.base.Request import Request
import os
import time
from dotenv import load_dotenv
from volcengine.base.Service import Service
from volcenginesdkarkruntime import Ark
def initialize_services(ak=None, sk=None, ark_api_key=None):
"""初始化记忆数据库服务和LLM客户端"""
load_dotenv()

View File

@@ -1,5 +1,4 @@
import json
from VikingDBMemoryService import VikingDBMemoryService, initialize_services, ensure_collection_exists, search_relevant_memories
import time
"""
在记忆库准备好后,我们先模拟一段包含两轮的完整对话。
@@ -7,7 +6,8 @@ from VikingDBMemoryService import VikingDBMemoryService, initialize_services, en
AI 就能用刚写入的记忆来回答。
注意:首次写入需要 35 分钟建立索引,这段时间内检索会报错。
"""
import json
from VikingDBMemoryService import initialize_services, ensure_collection_exists, search_relevant_memories
def handle_conversation_turn(memory_service, llm_client, collection_name, user_id, user_message, conversation_history):
"""处理一轮对话包括记忆搜索和LLM响应。"""
print("\n" + "=" * 60)