rag/rag/rag.bak.py
2025-07-16 15:06:59 +08:00

53 lines
1.4 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from ahserver.serverenv import ServerEnv
from ahserver.configuredServer import ConfiguredServer
from ahserver.webapp import webapp
from appPublic.worker import awaitify
from query import search_query
from embed import embed
from deletefile import delete_document
import logging
import os
# 配置日志
logging.basicConfig(
level=logging.DEBUG,
format='%(asctime)s - %(levelname)s - %(message)s',
handlers=[
logging.FileHandler(os.path.expanduser('~/rag/logs/rag.log'), encoding='utf-8'),
logging.StreamHandler()
]
)
logger = logging.getLogger(__name__)
def get_module_dbname(name):
"""
获取默认数据库名称,优先使用环境变量 RAG_DB_TYPE未设置时返回 'textdb'
"""
return os.getenv('RAG_DB_TYPE', 'textdb')
def init():
"""
初始化 RAG 系统,绑定核心函数到 ServerEnv。
"""
try:
logger.info("初始化 RAG 系统")
g = ServerEnv()
# 绑定核心函数为异步版本
g.embed = awaitify(embed)
g.query = awaitify(search_query)
g.delete = awaitify(delete_document)
g.get_module_dbname = get_module_dbname
logger.info("RAG 系统初始化完成")
return g
except Exception as e:
logger.error(f"初始化失败: {str(e)}")
raise
if __name__ == '__main__':
logger.info("启动 RAG Web 服务器")
webapp(init)