Skip to content

Commit e6f8bae

Browse files
committed
fix: support byteplus in viking, web_search and mem0
1 parent 5d35f07 commit e6f8bae

3 files changed

Lines changed: 47 additions & 31 deletions

File tree

veadk/knowledgebase/backends/vikingdb_knowledge_backend.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -705,6 +705,7 @@ def _do_request(
705705
session_token=sts_token or self.session_token,
706706
method=method,
707707
data=body,
708+
region=self.region,
708709
)
709710
response = requests.request(
710711
method=method,

veadk/memory/long_term_memory_backends/vikingdb_memory_backend.py

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,14 @@ def _get_ak_sk_sts(self) -> tuple[str, str, str]:
150150

151151
def _get_client(self) -> VikingDBMemoryClient:
152152
ak, sk, sts_token = self._get_ak_sk_sts()
153+
if self.cloud_provider.lower() == "byteplus":
154+
host = f"api-knowledgebase.mlp.{self.region}.bytepluses.com"
155+
156+
logger.info(f"Cloud provider: {self.cloud_provider.lower()}")
157+
logger.info(f"VikingDBLTMBackend: region={self.region}, host={host}")
158+
153159
return VikingDBMemoryClient(
160+
host=host,
154161
ak=ak,
155162
sk=sk,
156163
sts_token=sts_token,
@@ -159,23 +166,23 @@ def _get_client(self) -> VikingDBMemoryClient:
159166

160167
def _get_sdk_client(self) -> VikingMem:
161168
ak, sk, sts_token = self._get_ak_sk_sts()
162-
client = VikingDBMemoryClient(
163-
ak=ak,
164-
sk=sk,
165-
sts_token=sts_token,
166-
region=self.region,
167-
)
168-
169-
host = client.get_host()
170169
if self.cloud_provider.lower() == "byteplus":
171170
host = f"api-knowledgebase.mlp.{self.region}.bytepluses.com"
172171

173172
logger.info(f"Cloud provider: {self.cloud_provider.lower()}")
174173
logger.info(f"VikingDBLTMBackend: region={self.region}, host={host}")
175174

176-
return VikingMem(
175+
client = VikingDBMemoryClient(
177176
host=host,
178177
region=self.region,
178+
ak=ak,
179+
sk=sk,
180+
sts_token=sts_token,
181+
)
182+
183+
return VikingMem(
184+
host=client.get_host(),
185+
region=self.region,
179186
auth=IAM(
180187
ak=ak,
181188
sk=sk,

veadk/tools/builtin_tools/web_search.py

Lines changed: 30 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"""
1818

1919
import os
20+
import requests
2021

2122
from google.adk.tools import ToolContext
2223

@@ -71,33 +72,40 @@ def web_search(query: str, tool_context: ToolContext | None = None) -> list[str]
7172
"Query": query,
7273
"Count": 5,
7374
}
74-
host = "torchlight.byteintlapi.com/search_api/web_search"
7575
api_key = os.getenv("BYTEPLUS_WEB_SEARCH_API_KEY")
76+
if not api_key:
77+
logger.error("BYTEPLUS_WEB_SEARCH_API_KEY is not set.")
78+
return ["Web search failed: API key is not set."]
7679
header = {
77-
"X-Security-Token": session_token,
7880
"Authorization": f"Bearer {api_key}",
81+
"Content-Type": "application/json",
7982
}
80-
else:
81-
request_body = {
82-
"Query": query,
83-
"SearchType": "web",
84-
"Count": 5,
85-
"NeedSummary": True,
86-
}
87-
host = "mercury.volcengineapi.com"
88-
header = {"X-Security-Token": session_token}
8983

90-
response = ve_request(
91-
request_body=request_body,
92-
action="WebSearch",
93-
ak=ak,
94-
sk=sk,
95-
service="volc_torchlight_api",
96-
version="2025-01-01",
97-
region="cn-beijing",
98-
host=host,
99-
header=header,
100-
)
84+
response = requests.post(
85+
url="https://torchlight.byteintlapi.com/search_api/web_search",
86+
headers=header,
87+
json=request_body,
88+
timeout=60,
89+
)
90+
response.raise_for_status()
91+
response = response.json()
92+
else:
93+
response = ve_request(
94+
request_body={
95+
"Query": query,
96+
"SearchType": "web",
97+
"Count": 5,
98+
"NeedSummary": True,
99+
},
100+
action="WebSearch",
101+
ak=ak,
102+
sk=sk,
103+
service="volc_torchlight_api",
104+
version="2025-01-01",
105+
region="cn-beijing",
106+
host="mercury.volcengineapi.com",
107+
header={"X-Security-Token": session_token},
108+
)
101109

102110
try:
103111
results: list = response["Result"]["WebResults"]

0 commit comments

Comments
 (0)