40 lines
1.2 KiB
Python
40 lines
1.2 KiB
Python
from config.pgDb import pg_pool
|
|
|
|
|
|
def get_available_knowledge_bases(available_module: str):
|
|
with pg_pool.getConn() as conn:
|
|
with conn.cursor() as cursor:
|
|
cursor.execute(
|
|
"""
|
|
SELECT id, name, description, is_active
|
|
FROM ai_knowledge
|
|
WHERE available_module::jsonb @> %s::jsonb
|
|
""",
|
|
(f'["{available_module}"]',),
|
|
)
|
|
|
|
return [
|
|
{
|
|
"id": row[0],
|
|
"name": row[1],
|
|
"description": row[2],
|
|
"is_active": row[3],
|
|
}
|
|
for row in cursor.fetchall()
|
|
]
|
|
|
|
|
|
def add_knowledge_base(name, description, user_id):
|
|
with pg_pool.getConn() as conn:
|
|
with conn.cursor() as cursor:
|
|
cursor.execute(
|
|
"""
|
|
INSERT INTO ai_knowledge (name, description, created_by, created_at)
|
|
VALUES (%s, %s, %s, now())
|
|
RETURNING id
|
|
""",
|
|
(name, description, user_id),
|
|
)
|
|
new_id = cursor.fetchone()[0] # 取返回的 id
|
|
return new_id
|