mirror of
https://github.com/guohuadeng/app-odoo.git
synced 2025-02-23 04:11:36 +02:00
v服务器转发处理,nginx可能后续要再调整配置,使用一个 toai.py 来处理转发请求,细节待Fix
This commit is contained in:
@@ -17,12 +17,12 @@
|
|||||||
<p>Please ask me any question.</p>]]></field>
|
<p>Please ask me any question.</p>]]></field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record model="mail.channel.member" id="channel_member_chatgtp_channel_for_admin">
|
<!-- <record model="mail.channel.member" id="channel_member_chatgtp_channel_for_admin">-->
|
||||||
<field name="partner_id" ref="base.partner_admin"/>
|
<!-- <field name="partner_id" ref="base.partner_admin"/>-->
|
||||||
<field name="channel_id" ref="app_chatgpt.channel_chatgpt"/>
|
<!-- <field name="channel_id" ref="app_chatgpt.channel_chatgpt"/>-->
|
||||||
<field name="fetched_message_id" ref="app_chatgpt.module_install_notification"/>
|
<!-- <field name="fetched_message_id" ref="app_chatgpt.module_install_notification"/>-->
|
||||||
<field name="seen_message_id" ref="app_chatgpt.module_install_notification"/>
|
<!-- <field name="seen_message_id" ref="app_chatgpt.module_install_notification"/>-->
|
||||||
</record>
|
<!-- </record>-->
|
||||||
|
|
||||||
<record model="mail.channel" id="app_chatgpt.channel_chatgpt">
|
<record model="mail.channel" id="app_chatgpt.channel_chatgpt">
|
||||||
<field name="group_ids" eval="[Command.link(ref('base.group_user'))]"/>
|
<field name="group_ids" eval="[Command.link(ref('base.group_user'))]"/>
|
||||||
|
|||||||
@@ -229,12 +229,12 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
o_url = self.endpoint or "https://api.openai.com/v1/chat/completions"
|
o_url = self.endpoint or "https://api.openai.com/v1/chat/completions"
|
||||||
|
|
||||||
# 处理传参,传过来的优先于 robot 默认的
|
# 处理传参,传过来的优先于 robot 默认的
|
||||||
max_tokens = param.get('max_tokens') or self.max_tokens or 600,
|
max_tokens = param.get('max_tokens') if param.get('max_tokens') else self.max_tokens
|
||||||
temperature = param.get('temperature') or self.temperature or 0.8,
|
temperature = param.get('temperature') if param.get('temperature') else self.temperature
|
||||||
top_p = param.get('top_p') or self.top_p or 0.6,
|
top_p = param.get('top_p') if param.get('top_p') else self.top_p
|
||||||
frequency_penalty = param.get('frequency_penalty') or self.frequency_penalty or 0.5,
|
frequency_penalty = param.get('frequency_penalty') if param.get('frequency_penalty') else self.frequency_penalty
|
||||||
presence_penalty = param.get('presence_penalty') or self.presence_penalty or 0.5,
|
presence_penalty = param.get('presence_penalty') if param.get('presence_penalty') else self.presence_penalty
|
||||||
# request_timeout = param.get('request_timeout') or self.ai_timeout or 120,
|
request_timeout = param.get('request_timeout') if param.get('request_timeout') else self.ai_timeout
|
||||||
|
|
||||||
if self.stop:
|
if self.stop:
|
||||||
stop = self.stop.split(',')
|
stop = self.stop.split(',')
|
||||||
@@ -254,21 +254,40 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
sys_content = self.get_ai_system(param.get('sys_content'))
|
sys_content = self.get_ai_system(param.get('sys_content'))
|
||||||
if sys_content:
|
if sys_content:
|
||||||
messages.insert(0, sys_content)
|
messages.insert(0, sys_content)
|
||||||
# 暂时不变
|
# todo: 当前反向代理方式不通,要调整为 远程主机中接受请求,post到openai,再将结果返回给请求者
|
||||||
response = openai.ChatCompletion.create(
|
# response = openai.ChatCompletion.create(
|
||||||
model=self.ai_model,
|
# model=self.ai_model,
|
||||||
messages=messages,
|
# messages=messages,
|
||||||
n=1,
|
# # 返回的回答数量
|
||||||
temperature=self.temperature or 0.8,
|
# n=1,
|
||||||
max_tokens=self.max_tokens or 600,
|
# max_tokens=max_tokens,
|
||||||
top_p=self.top_p or 0.6,
|
# temperature=temperature,
|
||||||
frequency_penalty=self.frequency_penalty or 0.5,
|
# top_p=top_p,
|
||||||
presence_penalty=self.presence_penalty or 0.5,
|
# frequency_penalty=frequency_penalty,
|
||||||
stop=stop,
|
# presence_penalty=presence_penalty,
|
||||||
request_timeout=self.ai_timeout or 120,
|
# stop=stop,
|
||||||
)
|
# request_timeout=request_timeout,
|
||||||
if 'choices' in response:
|
# )
|
||||||
return response
|
# if 'choices' in response:
|
||||||
|
# return response
|
||||||
|
# todo: 两种方式一样,要调整 v 服务器的二次处理 /root/toai.py
|
||||||
|
pdata = {
|
||||||
|
"model": self.ai_model,
|
||||||
|
"messages": messages,
|
||||||
|
"max_tokens": max_tokens,
|
||||||
|
"temperature": temperature,
|
||||||
|
"top_p": top_p,
|
||||||
|
"frequency_penalty": frequency_penalty,
|
||||||
|
"presence_penalty": presence_penalty,
|
||||||
|
"stop": stop
|
||||||
|
}
|
||||||
|
response = requests.post(o_url, data=json.dumps(pdata), headers=headers, timeout=R_TIMEOUT)
|
||||||
|
try:
|
||||||
|
res = response.json()
|
||||||
|
if 'choices' in res:
|
||||||
|
return res
|
||||||
|
except Exception as e:
|
||||||
|
_logger.warning("Get Response Json failed: %s", e)
|
||||||
else:
|
else:
|
||||||
_logger.warning('=====================Openai output data: %s' % response)
|
_logger.warning('=====================Openai output data: %s' % response)
|
||||||
elif self.ai_model == 'dall-e2':
|
elif self.ai_model == 'dall-e2':
|
||||||
@@ -320,13 +339,13 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
else:
|
else:
|
||||||
messages = [{"role": "user", "content": data}]
|
messages = [{"role": "user", "content": data}]
|
||||||
|
|
||||||
# todo: 处理传参,传过来的优先于 robot 默认的,当前有问题,无法做tuple转换
|
# 处理传参,传过来的优先于 robot 默认的
|
||||||
max_tokens = param.get('max_tokens') or self.max_tokens or 600,
|
max_tokens = param.get('max_tokens') if param.get('max_tokens') else self.max_tokens
|
||||||
temperature = param.get('temperature') or self.temperature or 0.8,
|
temperature = param.get('temperature') if param.get('temperature') else self.temperature
|
||||||
top_p = param.get('top_p') or self.top_p or 0.6,
|
top_p = param.get('top_p') if param.get('top_p') else self.top_p
|
||||||
frequency_penalty = param.get('frequency_penalty') or self.frequency_penalty or 0.5,
|
frequency_penalty = param.get('frequency_penalty') if param.get('frequency_penalty') else self.frequency_penalty
|
||||||
presence_penalty = param.get('presence_penalty') or self.presence_penalty or 0.5,
|
presence_penalty = param.get('presence_penalty') if param.get('presence_penalty') else self.presence_penalty
|
||||||
# request_timeout = param.get('request_timeout') or self.ai_timeout or 120,
|
request_timeout= param.get('request_timeout') if param.get('request_timeout') else self.ai_timeout
|
||||||
|
|
||||||
# Ai角色设定,如果没设定则再处理
|
# Ai角色设定,如果没设定则再处理
|
||||||
if messages[0].get('role') != 'system':
|
if messages[0].get('role') != 'system':
|
||||||
@@ -339,13 +358,13 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
messages=messages,
|
messages=messages,
|
||||||
# 返回的回答数量
|
# 返回的回答数量
|
||||||
n=1,
|
n=1,
|
||||||
temperature=self.temperature or 0.8,
|
max_tokens=max_tokens,
|
||||||
max_tokens=self.max_tokens or 600,
|
temperature=temperature,
|
||||||
top_p=self.top_p or 0.6,
|
top_p=top_p,
|
||||||
frequency_penalty=self.frequency_penalty or 0.5,
|
frequency_penalty=frequency_penalty,
|
||||||
presence_penalty=self.presence_penalty or 0.5,
|
presence_penalty=presence_penalty,
|
||||||
stop=stop,
|
stop=stop,
|
||||||
request_timeout=self.ai_timeout or 120,
|
request_timeout=request_timeout,
|
||||||
)
|
)
|
||||||
if 'choices' in response:
|
if 'choices' in response:
|
||||||
return response
|
return response
|
||||||
|
|||||||
@@ -6060,7 +6060,6 @@ cctv
|
|||||||
wan wang zhi wang
|
wan wang zhi wang
|
||||||
抽插27岁处女meimei淫叫不断
|
抽插27岁处女meimei淫叫不断
|
||||||
中天萬方
|
中天萬方
|
||||||
代理
|
|
||||||
亮穴
|
亮穴
|
||||||
机战
|
机战
|
||||||
成人 激情 淫 另类
|
成人 激情 淫 另类
|
||||||
@@ -9911,7 +9910,6 @@ Tokyo Hot n0188 田中爱
|
|||||||
毛卖逼
|
毛卖逼
|
||||||
插 操 干 骚穴 嫩穴 小穴 密穴 淫水流
|
插 操 干 骚穴 嫩穴 小穴 密穴 淫水流
|
||||||
兔meimei色色贴图区
|
兔meimei色色贴图区
|
||||||
功
|
|
||||||
毛夜情
|
毛夜情
|
||||||
宁王府成人论坛导航
|
宁王府成人论坛导航
|
||||||
岩崎 Sky Angel Vol。27
|
岩崎 Sky Angel Vol。27
|
||||||
@@ -14359,7 +14357,6 @@ secretchina
|
|||||||
江泽民靠
|
江泽民靠
|
||||||
錢 其 琛
|
錢 其 琛
|
||||||
和妹妹做爱
|
和妹妹做爱
|
||||||
服务器
|
|
||||||
性交做爱
|
性交做爱
|
||||||
毛李鹏
|
毛李鹏
|
||||||
狗卵子
|
狗卵子
|
||||||
|
|||||||
Reference in New Issue
Block a user