Files
ai-g3sb-backman2.0/llm/__pycache__/deepseek_client.cpython-312.pyc
T

122 lines
11 KiB
Plaintext
Raw Normal View History

2026-04-10 16:52:07 +08:00
Ë
ôŸØi*"ãóð—dZddlZddlZddlZddlmZmZmZmZm Z ddl
m Z m Z ddl
mZmZddlmZmZej&e«Ze Gd„d««ZGd „d
«ZGd „d «Z dd
eedefd„Zy)uL
DeepSeek API 客户端�装
支��步/异步调用,与CAMEL AI兼容
éN)ÚDictÚListÚOptionalÚAnyÚUnion)Ú dataclassÚfield)ÚOpenAIÚ AsyncOpenAI)ÚChatCompletionÚChatCompletionMessagecóª—eZdZUdZeed<dZeed<dZeed<dZe ed<d Z
e ed
<d Z e ed <d
Z
e ed<d
Ze ed<dZe ed<dZeeeefed<y)ÚDeepSeekConfiguDeepSeek APIé…�ç½®Úapi_keyzhttps://api.deepseek.comÚbase_urlz
deepseek-chatÚ
model_nameg333333Ó?Ú temperatureiÚ
max_tokensgÍÌÌÌÌÌì?Útop_pgÚfrequency_penaltyÚpresence_penaltygN@ÚtimeoutNÚ
extra_headers)Ú__name__Ú
__module__Ú __qualname__Ú__doc__ÚstrÚ__annotations__rrrÚfloatrÚintrrrrrrr©óúPC:\Users\24019\Desktop\backman-camel\text2sql_agent_camel\llm\deepseek_client.pyrrss…áØ
ƒLØ.€HˆcÓ.Ø%€J�Ó%Ø€K�ÓØ€J�ÓØ€Eˆ5ÓØ"Ð�uÓ"Ø!Ð�eÓ!Ø€GˆUÓØ.2€M�8˜D  c ™NÑ+Ô2r#rc ó¾—eZdZdZdefd„Zdeeeefde fd„Z
deeeefdeee ffd„Z dded ed
edefd „Z
d ed edeee ffd
„Zdededeee ffd„Zy)ÚDeepSeekClientub
DeepSeek API 客户端(�步)
使用 OpenAI 兼容接�调用 DeepSeek 模型
ÚconfigcóÒ—||_t|j|j|j¬«|_t jd|j›d|j›�«y)N©rrru$[OK] DeepSeekClientåˆ�始化: model=z , base_url=) r'r
rrrÚclientÚloggerÚinfor©Úselfr's r$Ú__init__zDeepSeekClient.__init__'s]€ØˆŒ ôØ—N‘NØ—_‘_Ø—N‘Nô
ˆŒ ô � ‰ Ø2°6×3DÑ3DÐ2EðFØŸ™Ð(ð
*õ
r#ÚmessagesÚreturnc óÊ—|jj||jd|jj«|jd|jj«|jd|jj
«|jd|jj «|jd|jj«|jd|jj«dœ}|jjr|jj|d< |jjjjdi|¤Ž}|jd j}|j }t"j%d
|j&›d |j(›d |j*›�«|S#t,$r}t"j/d
|›�«‚d}~wwxYw)u 
���天请求
Args:
messages: 消�列表,格�为 [{"role": "user", "content": "..."}, ...]
**kwargs: 覆盖默认�数的�外�数
Returns:
ChatCompletionMessage对象(包�.role和.content属性)
rrrrrr)Úmodelr0rrrrrrrru$DeepSeek调用完æˆ�: prompt_tokens=z, completion_tokens=z, total_tokens=uDeepSeek API调用失败: Nr")r'rÚgetrrrrrrrr*ÚchatÚ completionsÚcreateÚchoicesÚmessageÚusager+ÚdebugÚ
prompt_tokensÚcompletion_tokensÚ total_tokensÚ ExceptionÚerror)r.r0ÚkwargsÚparamsÚresponser9r:Úes r$r5zDeepSeekClient.chat6s•€ð"—[‘[×+Ñ+Ø Ø!Ÿ:™: m°T·[±[×5LÑ5LÓMØ Ÿ*™* \°4·;±;×3IÑ3IÓJØ—Z‘Z ¨¯©×):Ñ):Ó;Ø!'§¡Ø# T§[¡[×%BÑ%Bó"ð!'§
¡
Ø" D§K¡K×$@Ñ$@ó!ð—z‘z )¨T¯[©[×-@Ñ-@ÓAñ

ˆð �;‰;× $Ò $Ø&*§k¡k×&?Ñ&?ˆF�?Ñ #ð Ø'J t§{¡{×'7Ñ'7×'CÑ'C×'JÑ'JÑ'TÈVÑ'TˆHØ×&Ñ& qÑ)×1Ñ1ˆGð—N‘NˆEÜ �L‰Lð!Ø!&×!4Ñ!4Ð 5ð6%Ø%*×%<Ñ%<Ð$=ð> Ø %× 2Ñ 2Ð3ð5ô
ðˆNøäò Ü �L‰LÐ5°a°SÐ9Ô :Ø ûð úsÄ(BF;Æ; G"ÇGÇG"c óö—|j|fi|¤Ž}|jj«} d|vr:|jd«dz}|jd|«}|||j«}n=d|vr9|jd«dz}|jd|«}|||j«}t j
|«S#tj $r&}tjd|›�«d|icYd}~Sd}~wwxYw)uÇ
���天请求并期望JSON格�返回
Args:
messages: 消�列表
**kwargs: �外�数
Returns:
解��的JSON字典
z```jsonéú```éu'JSONè§£æž�失败,返回原始内容: Ú raw_contentN) r5ÚcontentÚstripÚfindÚjsonÚloadsÚJSONDecodeErrorr+Úwarning)r.r0rAr9rJÚstartÚendrDs r$Úchat_with_jsonzDeepSeekClient.chat_with_jsonksô€ð�$—)‘)˜HÑ/¨Ñ/ˆØ—/‘/×'Ñ'Ó)ˆð ,à˜GÑ#àŸ ™  YÓ/°!Ñ3�Ø—l‘l 5¨%Ó0�Ø! %¨Ð,×2Ñ2Ó4‘ؘ'Ñ!àŸ ™  UÓ+¨aÑ/�Ø—l‘l 5¨%Ó0�Ø! %¨Ð,×2Ñ2Ó4�ä—:‘:˜gÓ&Ð &øÜ×#Ñ#ò ,Ü �N‰NÐDÀQÀCÐHÔ IØ! 7Ð+Õ +ûð ,ús¯BB?Â?C8ÃC3Ã-C8Ã3C8ÚpromptÚschemaÚdialectc ó —ddlm}m}d|dœd|j|||¬«dœg}|j|fi|¤Ž}|j
j
«} d| vr;| jd«dz}
| jd |
«} | |
| j
«} | Sd | vr9| jd «d
z}
| jd |
«} | |
| j
«} | S) u
便�方法:生�SQL
Args:
prompt: 用户问题
schema: Schema�述
dialect: SQL方言(默认 T-SQL / SQL Server)
**kwargs: �外�数
Returns:
SQL字符串
r)ÚSQL_GENERATOR_SYSTEMÚSQL_GENERATOR_USERÚsystem©ÚrolerJÚuser)rUÚquestionrVz```sqlérGrH)Úconfig.promptsrXrYÚformatr5rJrKrL) r.rTrUrVrArXrYr0rCrJrQrRs r$Ú generate_sqlzDeepSeekClient.generate_sql�sù€÷& LðÐ*>Ñ ?àØ-×4Ñ4Ø!Ø#Ø#ð5óñ
ð

ˆð�4—9‘9˜XÑ0¨Ñ0ˆØ×"Ñ"×(Ñ(Ó*ˆð �wÑ Ø—L‘L Ó*¨QÑ.ˆEØ—,‘,˜u eÓ,ˆCؘe CÐ(×.Ñ.Ó0ˆGðˆð
�gÑ
à—L‘L Ó'¨!Ñ+ˆEØ—,‘,˜u eÓ,ˆCؘe CÐ(×.Ñ.Ó0ˆGàˆr#Úsqlc ón—ddlm}m}d|dœd|j||¬«dœg}|j|fi|¤ŽS)uÉ
便�方法:验�SQL
Args:
sql: SQL语�
schema: Schema�述
**kwargs: �外�数
Returns:
验�结果字典
r)ÚVALIDATOR_SYSTEMÚVALIDATOR_USERrZr[r])rcrU)r`rerfrarS)r.rcrUrArerfr0s r$Ú validate_sqlzDeepSeekClient.validate_sqlÀsO€÷" DðÐ*:Ñ ;àØ)×0Ñ0°SÀÐ0ÓHñ
ð
ˆð#ˆt×"Ñ" 8Ñ6¨vÑ6Ð6r#r^Ú
table_listc ón—ddlm}m}d|dœd|j||¬«dœg}|j|fi|¤ŽS)uÿ
便�方法:选择相关表
Args:
question: 用户问题
table_list: �用表列表字符串
**kwargs: �外�数
Returns:
包�relevant_tables和reasoning的字典
r)ÚSCHEMA_LINKER_SYSTEMÚSCHEMA_LINKER_USERrZr[r])r^rh)r`rjrkrarS)r.r^rhrArjrkr0s r$Ú
select_tableszDeepSeekClient.select_tablesÝsU€÷" LðÐ*>Ñ ?àØ-×4Ñ4Ø%Ø)ð5óñ
ð 
ˆð#ˆt×"Ñ" 8Ñ6¨vÑ6Ð6r#N)Útsql)rrrrrr/rrrr
r5rrSrbrgrlr"r#r$r&r& sè„ñð

˜~ó

ð3à�t˜C ˜H‘~Ñ&ð3ð
ó 3ðj",à�t˜C ˜H‘~Ñ&ð",ð
ˆc�3ˆh‰ó ",ðPñ /àð/ðð/ðð /ð
ó