Skip to content

Commit 3333649

Browse files
committed
fix self.sk
1 parent 792fdaa commit 3333649

1 file changed

Lines changed: 31 additions & 27 deletions

File tree

veadk/knowledgebase/backends/vikingdb_knowledge_backend.py

Lines changed: 31 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,10 @@
2525
from volcengine.viking_knowledgebase import VikingKnowledgeBaseService
2626

2727
import veadk.config # noqa E401
28-
from veadk.auth.veauth.utils import get_credential_from_vefaas_iam
28+
from veadk.auth.veauth.utils import (
29+
VeIAMCredential,
30+
get_credential_from_vefaas_iam,
31+
)
2932
from veadk.configs.database_configs import NormalTOSConfig, TOSConfig
3033
from veadk.knowledgebase.backends.base_backend import BaseKnowledgebaseBackend
3134
from veadk.knowledgebase.backends.utils import (
@@ -157,20 +160,16 @@ def precheck_index_naming(self):
157160
)
158161

159162
def _get_tos_client(self, tos_bucket_name: str) -> VeTOS:
160-
volcengine_access_key = self.volcengine_access_key
161-
volcengine_secret_key = self.volcengine_secret_key
162-
session_token = self.session_token
163-
164-
if not (volcengine_access_key and volcengine_secret_key):
165-
cred = get_credential_from_vefaas_iam()
166-
volcengine_access_key = cred.access_key_id
167-
volcengine_secret_key = cred.secret_access_key
168-
session_token = cred.session_token
163+
if not (self.volcengine_access_key and self.volcengine_secret_key):
164+
cred = self._set_service_info()
165+
ak = cred.access_key_id
166+
sk = cred.secret_access_key
167+
sts_token = cred.session_token
169168

170169
return VeTOS(
171-
ak=volcengine_access_key,
172-
sk=volcengine_secret_key,
173-
session_token=session_token,
170+
ak=ak or self.volcengine_access_key,
171+
sk=sk or self.volcengine_secret_key,
172+
session_token=sts_token or self.session_token,
174173
region=self.tos_config.region,
175174
bucket_name=tos_bucket_name or self.tos_config.bucket,
176175
)
@@ -544,13 +543,17 @@ def _search_knowledge(
544543
"chunk_diffusion_count": chunk_diffusion_count,
545544
}
546545

547-
self._set_service_info()
546+
if not (self.volcengine_access_key and self.volcengine_secret_key):
547+
cred = self._set_service_info()
548+
ak = cred.access_key_id
549+
sk = cred.secret_access_key
550+
sts_token = cred.session_token
548551

549552
self._viking_sdk_client = VikingKnowledgeBaseService(
550553
host=self.host,
551-
ak=self.volcengine_access_key,
552-
sk=self.volcengine_secret_key,
553-
sts_token=self.session_token,
554+
ak=ak or self.volcengine_access_key,
555+
sk=sk or self.volcengine_secret_key,
556+
sts_token=sts_token or self.session_token,
554557
scheme=self.schema,
555558
)
556559

@@ -577,7 +580,7 @@ def _search_knowledge(
577580

578581
return entries
579582

580-
def _set_service_info(self):
583+
def _set_service_info(self) -> VeIAMCredential:
581584
env_host = getenv(
582585
"DATABASE_VIKING_BASE_URL",
583586
default_value=None,
@@ -594,11 +597,8 @@ def _set_service_info(self):
594597
"DATABASE_VIKING_BASE_URL must start with http:// or https://"
595598
)
596599

597-
if not (self.volcengine_access_key and self.volcengine_secret_key):
598-
cred = get_credential_from_vefaas_iam()
599-
self.volcengine_access_key = cred.access_key_id
600-
self.volcengine_secret_key = cred.secret_access_key
601-
self.session_token = cred.session_token
600+
cred = get_credential_from_vefaas_iam()
601+
return cred
602602

603603
def _do_request(
604604
self,
@@ -608,13 +608,17 @@ def _do_request(
608608
) -> dict:
609609
full_path = f"{self.base_url}{path}"
610610

611-
self._set_service_info()
611+
if not (self.volcengine_access_key and self.volcengine_secret_key):
612+
cred = self._set_service_info()
613+
ak = cred.access_key_id
614+
sk = cred.secret_access_key
615+
sts_token = cred.session_token
612616

613617
request = build_vikingdb_knowledgebase_request(
614618
path=path,
615-
volcengine_access_key=self.volcengine_access_key,
616-
volcengine_secret_key=self.volcengine_secret_key,
617-
session_token=self.session_token,
619+
volcengine_access_key=ak or self.volcengine_access_key,
620+
volcengine_secret_key=sk or self.volcengine_secret_key,
621+
session_token=sts_token or self.session_token,
618622
method=method,
619623
data=body,
620624
)

0 commit comments

Comments
 (0)