tencentdb_ai 的前提是您已经创建完成了大版本为 PostgreSQL 17 的实例。tencentdb_ai 插件会关联创建 pgcrypto 插件,请知悉。add_model 函数定义如下:tencentdb_ai.add_model(model_name NAME,version TEXT,region TEXT,json_path JSONPATH);
hunyuan-lite,deepseek-r1 等。version,如该模型不需要 version 参数则可以不填写。region,如该模型不需要 region 参数则可以不填写。JSON响应进行提取。相当于对模型输出调用jsonb_path_query_first函数。如果不指定该参数,默认原样输出模型的原始响应。list_models 函数定义如下:tencentdb_ai.list_models(void);
update_model_attr 函数定义如下:tencentdb_ai.update_model_attr(model_name NAME,attr_name text,attr_value text);
version、region、json_path、SecretId、SecretKey。delete_model 函数定义如下:tencentdb_ai.delete_model(model_name NAME);
tencentdb_ai.call_model(model_name NAME,common_params TEXT[],api_params TEXT[]);
ARRAY['Action: ChatCompletions', 'Version: 2023-09-01']ARRAY['"Stream": false', '"Model": "hunyuan-lite"', '"Messages": [{"Role": "user", "Content": "您好"}]']call_model 函数来进行模型调用之外,您还可以使用如下几个接口来进行特定场景的模型调用。chat_completions 函数定义如下:tencentdb_ai.chat_completions(model_name NAME,content TEXT,args TEXT[] default NULL);
SELECT tencentdb_ai.chat_completions('hunyuan-lite', '您好');chat_completions----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------{"Response":{"RequestId":"*******-****-****-****-***********","Note":"以上内容为AI生成,不代表开发者立场,请勿删除或修改本标记","Choices":[{"Index":0,"Message":{"Role":"assistant","Content":"您好呀!很高兴能和您聊天,今天有什么想和我分享的吗"},"FinishReason":"stop"}],"Created":1739786393,"Id":"*******-****-****-****-*********","Usage":{"PromptTokens":3,"CompletionTokens":17,"TotalTokens":20}}}(1 row)
get_embedding 函数定义如下:tencentdb_ai.get_embedding(model_name NAME,content TEXT[]);
damoxing1=> SELECT tencentdb_ai.get_embedding('hunyuan-embedding',ARRAY['您好', 'PostgreSQL']);
run_rerank 函数定义如下:tencentdb_ai.run_rerank(model_name NAME,query TEXT,documents TEXT[],args TEXT[] DEFAULT NULL);
damoxing1=> SELECT COUNT(*) FROM tencentdb_ai.run_rerank('lke-reranker-base', '知识引擎大模型', ARRAY['混元大模型', '腾讯知识引擎']);count-------2(1 row)
damoxing=> CREATE EXTENSION tencentdb_ai CASCADE;NOTICE: installing required extension "pgcrypto"CREATE EXTENSION
damoxing=> SELECT * FROM pg_extension;oid | extname | extowner | extnamespace | extrelocatable | extversion | extconfig | extcondition-------+--------------+----------+--------------+----------------+------------+-----------+--------------14275 | plpgsql | 10 | 11 | f | 1.0 | |16440 | pgcrypto | 16437 | 2200 | t | 1.3 | |16477 | tencentdb_ai | 16437 | 2200 | t | 1.0 | {16479} | {""}(3 rows)
damoxing=> SELECT tencentdb_ai.add_model('hunyuan-lite','2023-09-01', NULL, NULL);add_model-----------(1 row)
damoxing=> SELECT tencentdb_ai.update_model_attr('hunyuan-lite', 'SecretId', 'AKID***************');update_model_attr-------------------(1 row)damoxing=> SELECT tencentdb_ai.update_model_attr('hunyuan-lite', 'SecretKey', '********************');update_model_attr-------------------(1 row)
damoxing=> SELECT * FROM tencentdb_ai.list_models();-[ RECORD 1 ]--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------model_name | hunyuan-litejson_path |secretid | ***************************secretkey | ***************************version |region |id_random | 516234453022key_random | 134577899689
call_model 接口。damoxing=> SELECT tencentdb_ai.call_model('hunyuan-lite',ARRAY['Action: ChatCompletions', 'Version: 2023-09-01'],ARRAY['"Stream": false', '"Model": "hunyuan-lite"', '"Messages": [{"Role": "user", "Content": "您好"}]']);damoxing(> damoxing(>call_model------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------{"Response":{"RequestId":"*******-****-****-****-***********","Note":"以上内容为AI生成,不代表开发者立场,请勿删除或修改本标记","Choices":[{"Index":0,"Message":{"Role":"assistant","Content":"您好!很高兴与您交流。请问有什么我可以帮助您的吗?无论是关于生活、工作、学习还是其他方面的问题,我都会尽力为您提供帮助。"},"FinishReason":"stop"}],"Created":1739793838,"Id":"*******-****-****-****-***********","Usage":{"PromptTokens":3,"CompletionTokens":33,"TotalTokens":36}}}(1 row)damoxing=>
文档反馈