Моя цель — использовать службу Catalyst Cache для хранения данных сеансов нескольких пользователей, чтобы разговор каждого пользователя оставался независимым (без смешанных сеансов).
Код: Выделить всё
File "D:\hamthan-d\Smatal\chatbot\main.py", line 148, in
catalyst_app = initialize_app(credential=cred, options=options)
File "D:\hamthan-d\Smatal\chatbot\env\Lib\site-packages\zcatalyst_sdk\__init__.py", line 157, in initialize_app
app = CatalystApp(credential, options, name)
File "D:\hamthan-d\Smatal\chatbot\env\Lib\site-packages\zcatalyst_sdk\catalyst_app.py", line 119, in __init__
self._options = CatalystAppOptions(options)
~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "D:\hamthan-d\Smatal\chatbot\env\Lib\site-packages\zcatalyst_sdk\catalyst_app.py", line 50, in __init__
config = CatalystAppOptions.validate_options(options)
File "D:\hamthan-d\Smatal\chatbot\env\Lib\site-packages\zcatalyst_sdk\catalyst_app.py", line 75, in validate_options
raise CatalystAppError(
......
)
zcatalyst_sdk.exceptions.CatalystAppError: {'code': 'INVALID_APP_OPTIONS', 'message': "Either the key 'project_key' is missing or value provided for the project_key is None in app options"}
Код: Выделить всё
import os, json
from zcatalyst_sdk import initialize_app, credentials
from dotenv import load_dotenv
load_dotenv()
try:
cred = credentials.ApplicationDefaultCredential().credential
except Exception as e:
print(f"Error loading credentials from CATALYST_AUTH: {e}")
raise
options_json = os.getenv("options")
if options_json is None:
raise EnvironmentError("The required environment variable 'options' is missing from the environment or .env file.")
try:
options = json.loads(options_json)
except json.JSONDecodeError as e:
raise ValueError(f"Failed to parse 'options' environment variable as JSON: {e}")
catalyst_app = initialize_app(credential=cred, options=options)
Код: Выделить всё
{
"defaults": {
"project": 1,
"env": 1
},
"actives": {
"project": 1,
"env": 1
},
"projects": [
{
"idx": 1,
"id": "************",
"name": "chatbot",
"domain": {
"id": "**********",
"name": "chatbot-*******.development"
},
"timezone": "Asia/Kolkata",
"env": [
{
"idx": 1,
"id": "******",
"name": "Development",
"type": 3,
"env_status": "Active",
"project_details": {
"project_name": "chatbot",
"id": "***********",
"project_type": "Live"
},
"is_default": true,
"action_required": false
}
]
}
]
}
Код: Выделить всё
options = '{
"project_id": "*************",
"project_domain": "chatbot-************.development",
"environment": "Development"
}'
CATALYST_AUTH={"access_token": "*********************************"}
Моя цель — правильно инициализировать Catalyst, чтобы я мог получить доступ к службе кэша для обработки многопользовательских сеансов чат-бота (сохранение и извлечение памяти каждого пользователя независимо)
Подробнее здесь: https://stackoverflow.com/questions/798 ... id-for-dev
Мобильная версия