Commit 91f68b4c by 陈正乐

容器启动方式:init数据库问题

parent 7cbf00e6
......@@ -11,6 +11,7 @@ services:
volumes:
- ./lae_pg_data:/var/lib/postgresql/data
- ./init_db/create_db.sql:/docker-entrypoint-initdb.d/create_db.sql
- ./init_db/create_tables.sql:/docker-entrypoint-initdb.d/create_tables.sql
python:
build:
......@@ -22,7 +23,7 @@ services:
- "8003:8003"
stdin_open: true
tty: true
command: /bin/bash
command: python
volumes:
......
DROP TABLE IF EXISTS "chat";
CREATE TABLE chat (
chat_id varchar(1000) PRIMARY KEY,
user_id varchar(1000),
info text,
create_time timestamp(6) DEFAULT current_timestamp,
deleted int2
);
COMMENT ON COLUMN "chat"."chat_id" IS '会话id';
COMMENT ON COLUMN "chat"."user_id" IS '会话创建用户id';
COMMENT ON COLUMN "chat"."info" IS '会话简介';
COMMENT ON COLUMN "chat"."create_time" IS '会话创建时间,默认为当前时间';
COMMENT ON COLUMN "chat"."deleted" IS '是否删除:0=否,1=是';
COMMENT ON TABLE "chat" IS '会话信息表';
DROP SEQUENCE IF EXISTS "chat_seq";
CREATE SEQUENCE "chat_seq"
INCREMENT 1
MINVALUE 1
MAXVALUE 2147483647
START 1
CACHE 1;
ALTER TABLE chat ALTER COLUMN chat_id SET DEFAULT nextval('chat_seq'::regclass);
DROP TABLE IF EXISTS "turn_qa";
CREATE TABLE turn_qa (
turn_id varchar(1000) PRIMARY KEY,
chat_id varchar(1000),
question text,
answer text,
create_time timestamp(6) DEFAULT current_timestamp,
turn_number int,
is_last int2
);
COMMENT ON COLUMN "turn_qa"."turn_id" IS '会话轮次id';
COMMENT ON COLUMN "turn_qa"."chat_id" IS '会话id';
COMMENT ON COLUMN "turn_qa"."question" IS '该轮会话问题';
COMMENT ON COLUMN "turn_qa"."answer" IS '该轮会话答案';
COMMENT ON COLUMN "turn_qa"."create_time" IS '该轮会话创建时间,默认为当前时间';
COMMENT ON COLUMN "turn_qa"."turn_number" IS '会话轮数';
COMMENT ON COLUMN "turn_qa"."is_last" IS '是否为最后一轮对话:0=否,1=是';
COMMENT ON TABLE "turn_qa" IS '会话轮次信息表';
DROP SEQUENCE IF EXISTS "turn_qa_seq";
CREATE SEQUENCE "turn_qa_seq"
INCREMENT 1
MINVALUE 1
MAXVALUE 2147483647
START 1
CACHE 1;
ALTER TABLE turn_qa ALTER COLUMN turn_id SET DEFAULT nextval('turn_qa_seq'::regclass);
DROP TABLE IF EXISTS "c_user";
CREATE TABLE c_user (
user_id varchar(1000) PRIMARY KEY,
account varchar(20) NOT NULL,
password varchar(50) NOT NULL
);
COMMENT ON COLUMN "c_user"."user_id" IS '用户id';
COMMENT ON COLUMN "c_user"."account" IS '用户帐户';
COMMENT ON COLUMN "c_user"."password" IS '用户密码';
COMMENT ON TABLE "c_user" IS '用户表';
DROP SEQUENCE IF EXISTS "c_user_seq";
CREATE SEQUENCE "c_user_seq"
INCREMENT 1
MINVALUE 1
MAXVALUE 2147483647
START 1
CACHE 1;
ALTER TABLE c_user ALTER COLUMN user_id SET DEFAULT nextval('c_user_seq'::regclass);
INSERT INTO public.c_user (user_id, account, password) VALUES ('1', 'zhangs', '111111');
INSERT INTO public.c_user (user_id, account, password) VALUES ('2', 'lis', '111111');
INSERT INTO public.chat (chat_id, user_id, info, create_time, deleted) VALUES ('1', '1', '这是chat_id为1的问答info', '2024-05-27 01:12:05.022546', 0);
INSERT INTO public.chat (chat_id, user_id, info, create_time, deleted) VALUES ('2', '1', '这是chat_id为2的问答info', '2024-05-27 01:12:05.025912', 0);
INSERT INTO public.chat (chat_id, user_id, info, create_time, deleted) VALUES ('3', '2', '这是chat_id为3的问答info', '2024-05-27 01:12:05.027267', 0);
INSERT INTO public.chat (chat_id, user_id, info, create_time, deleted) VALUES ('4', '2', '这是chat_id为4的问答info', '2024-05-27 01:12:05.028840', 0);
import sys
sys.path.append('../')
from src.pgdb.chat.c_db import UPostgresDB
from src.pgdb.chat.crud import CRUD
from src.config.consts import (
CHAT_DB_USER,
CHAT_DB_HOST,
CHAT_DB_PORT,
CHAT_DB_DBNAME,
CHAT_DB_PASSWORD
)
"""测试会话相关数据可的连接"""
def test():
c_db = UPostgresDB(host=CHAT_DB_HOST, database=CHAT_DB_DBNAME, user=CHAT_DB_USER, password=CHAT_DB_PASSWORD,
port=CHAT_DB_PORT, )
print(c_db)
crud = CRUD(c_db)
crud.create_table()
# crud.insert_turn_qa("2", "wen4", "da1", 1, 0)
# crud.insert_turn_qa("2", "wen4", "da1", 2, 0)
# crud.insert_turn_qa("2", "wen4", "da1", 5, 0)
# crud.insert_turn_qa("2", "wen4", "da1", 4, 0)
# crud.insert_turn_qa("2", "wen4", "da1", 3, 0)
# crud.insert_turn_qa("2", "wen4", "da1", 6, 0)
# crud.insert_turn_qa("2", "wen4", "da1", 8, 0)
# crud.insert_turn_qa("2", "wen4", "da1", 7, 0)
# crud.insert_turn_qa("2", "wen4", "da1", 9, 0)
crud.insert_c_user('zhangs', '111111')
crud.insert_chat('1', '这是chat_id为1的问答info', 0)
crud.insert_c_user('lis', '111111')
crud.insert_chat('1', '这是chat_id为2的问答info', 0)
crud.insert_chat('2', '这是chat_id为3的问答info', 0)
crud.insert_chat('2', '这是chat_id为4的问答info', 0)
print(crud.get_history('2'))
if __name__ == "__main__":
test()
# -*- coding: utf-8 -*-
# 模型分割效果测试
from modelscope.outputs import OutputKeys
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
p = pipeline(
task=Tasks.document_segmentation,
model="C:\\Users\\15663\\AI\\models\\nlp_bert_document-segmentation_chinese-base",
model_revision='v1.0.1')
result = p(documents='移动端语音唤醒模型,检测关键词为“小云小云”。模型主体为4层FSMN结构,使用CTC训练准则,参数量750K,适用于移动端设备运行。模型输入为Fbank特征,输出为基于char建模的中文全集token预测,测试工具根据每一帧的预测数据进行后处理得到输入音频的实时检测结果。模型训练采用“basetrain + finetune”的模式,basetrain过程使用大量内部移动端数据,在此基础上,使用1万条设备端录制安静场景“小云小云”数据进行微调,得到最终面向业务的模型。后续用户可在basetrain模型基础上,使用其他关键词数据进行微调,得到新的语音唤醒模型,但暂时未开放模型finetune功能。')
print(result['text'].split('\n'))
print(type([OutputKeys.TEXT]), len(result[OutputKeys.TEXT]))
# 模型下载
# from modelscope import snapshot_download
# model_dir = snapshot_download('iic/nlp_bert_document-segmentation_chinese-base')
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment