mirror of
https://github.com/guohuadeng/app-odoo.git
synced 2025-02-23 04:11:36 +02:00
Merge branch '16.0' of https://github.com/guohuadeng/app-odoo into 16.0
# Conflicts: # app_chatgpt/models/ai_robot.py
This commit is contained in:
@@ -6,8 +6,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Odoo Server 16.0+e-20230320\n"
|
"Project-Id-Version: Odoo Server 16.0+e-20230320\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-03-30 10:30+0000\n"
|
"POT-Creation-Date: 2023-04-12 08:53+0000\n"
|
||||||
"PO-Revision-Date: 2023-03-30 10:30+0000\n"
|
"PO-Revision-Date: 2023-04-12 08:53+0000\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -420,6 +420,11 @@ msgstr ""
|
|||||||
msgid "ABCD"
|
msgid "ABCD"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__ai_completion_tokens
|
||||||
|
msgid "AI Completion Tokens"
|
||||||
|
msgstr "AI使用Token"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model.fields,field_description:app_chatgpt.field_ai_robot__ai_model
|
#: model:ir.model.fields,field_description:app_chatgpt.field_ai_robot__ai_model
|
||||||
msgid "AI Model"
|
msgid "AI Model"
|
||||||
@@ -478,13 +483,13 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model_terms:ir.ui.view,arch_db:app_chatgpt.is_res_config_settings_view
|
#: model_terms:ir.ui.view,arch_db:app_chatgpt.is_res_config_settings_view
|
||||||
msgid "Ai Center(Chatgpt)"
|
msgid "After timeout seconds then Disconnect"
|
||||||
msgstr "Ai服务中心(Chatgpt)"
|
msgstr "上下文连接超时(秒)"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model_terms:ir.ui.view,arch_db:app_chatgpt.is_res_config_settings_view
|
#: model_terms:ir.ui.view,arch_db:app_chatgpt.is_res_config_settings_view
|
||||||
msgid "Seconds"
|
msgid "Ai Center(Chatgpt)"
|
||||||
msgstr "秒"
|
msgstr "Ai服务中心(Chatgpt)"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model.fields.selection,name:app_chatgpt.selection__res_users__gpt_policy__all
|
#: model:ir.model.fields.selection,name:app_chatgpt.selection__res_users__gpt_policy__all
|
||||||
@@ -558,6 +563,13 @@ msgstr ""
|
|||||||
msgid "Azure"
|
msgid "Azure"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#. odoo-python
|
||||||
|
#: code:addons/app_chatgpt/models/ai_robot.py:0
|
||||||
|
#, python-format
|
||||||
|
msgid "Azure no response"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -588,6 +600,7 @@ msgid "Bactrian"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_partner__gpt_id
|
||||||
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__gpt_id
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__gpt_id
|
||||||
msgid "Bind to ChatGpt"
|
msgid "Bind to ChatGpt"
|
||||||
msgstr "绑定至ChatGpt"
|
msgstr "绑定至ChatGpt"
|
||||||
@@ -768,6 +781,16 @@ msgstr ""
|
|||||||
msgid "Config Settings"
|
msgid "Config Settings"
|
||||||
msgstr "配置设置"
|
msgstr "配置设置"
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_config_settings__openapi_context_timeout
|
||||||
|
msgid "Connect Timout"
|
||||||
|
msgstr "上下文连接超时"
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model,name:app_chatgpt.model_res_partner
|
||||||
|
msgid "Contact"
|
||||||
|
msgstr "联系人"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model.fields,field_description:app_chatgpt.field_ai_robot__create_uid
|
#: model:ir.model.fields,field_description:app_chatgpt.field_ai_robot__create_uid
|
||||||
msgid "Created by"
|
msgid "Created by"
|
||||||
@@ -851,6 +874,11 @@ msgstr ""
|
|||||||
msgid "END arrow"
|
msgid "END arrow"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model,name:app_chatgpt.model_mail_thread
|
||||||
|
msgid "Email Thread"
|
||||||
|
msgstr "EMail线程"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model.fields,field_description:app_chatgpt.field_ai_robot__endpoint
|
#: model:ir.model.fields,field_description:app_chatgpt.field_ai_robot__endpoint
|
||||||
msgid "End Point"
|
msgid "End Point"
|
||||||
@@ -924,6 +952,11 @@ msgstr ""
|
|||||||
msgid "Filter Sensitive Words"
|
msgid "Filter Sensitive Words"
|
||||||
msgstr "是否启用敏感词过滤"
|
msgstr "是否启用敏感词过滤"
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__first_ask_time
|
||||||
|
msgid "First Ask Time"
|
||||||
|
msgstr "首次发问时间"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -976,6 +1009,16 @@ msgstr ""
|
|||||||
msgid "Gemini"
|
msgid "Gemini"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model_terms:ir.ui.view,arch_db:app_chatgpt.ai_robot_form_view
|
||||||
|
msgid "Get List Model"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model_terms:ir.ui.view,arch_db:app_chatgpt.ai_robot_form_view
|
||||||
|
msgid "Get Model Info"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model,name:app_chatgpt.model_ai_robot
|
#: model:ir.model,name:app_chatgpt.model_ai_robot
|
||||||
msgid "Gpt Robot"
|
msgid "Gpt Robot"
|
||||||
@@ -996,6 +1039,11 @@ msgstr ""
|
|||||||
msgid "Hindu"
|
msgid "Hindu"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__human_prompt_tokens
|
||||||
|
msgid "Human Prompt Tokens"
|
||||||
|
msgstr "人员使用Token"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -1068,7 +1116,6 @@ msgstr ""
|
|||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Japanese"
|
msgid "Japanese"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -1356,6 +1403,11 @@ msgstr ""
|
|||||||
msgid "Max Length"
|
msgid "Max Length"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__max_number
|
||||||
|
msgid "Max Number of Call"
|
||||||
|
msgstr "最大发问次数"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model,name:app_chatgpt.model_mail_message
|
#: model:ir.model,name:app_chatgpt.model_mail_message
|
||||||
msgid "Message"
|
msgid "Message"
|
||||||
@@ -1484,6 +1536,11 @@ msgstr ""
|
|||||||
msgid "No robot provider found"
|
msgid "No robot provider found"
|
||||||
msgstr "没有设置Ai接口供应方"
|
msgstr "没有设置Ai接口供应方"
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__used_number
|
||||||
|
msgid "Number of Used"
|
||||||
|
msgstr "已发问次数"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -1714,6 +1771,11 @@ msgstr ""
|
|||||||
msgid "Scorpius"
|
msgid "Scorpius"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model_terms:ir.ui.view,arch_db:app_chatgpt.is_res_config_settings_view
|
||||||
|
msgid "Seconds"
|
||||||
|
msgstr "秒"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model.fields.selection,name:app_chatgpt.selection__res_users__gpt_policy__limit
|
#: model:ir.model.fields.selection,name:app_chatgpt.selection__res_users__gpt_policy__limit
|
||||||
msgid "Selected Users"
|
msgid "Selected Users"
|
||||||
@@ -1727,13 +1789,23 @@ msgstr "额外敏感词"
|
|||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model.fields,help:app_chatgpt.field_ai_robot__sensitive_words
|
#: model:ir.model.fields,help:app_chatgpt.field_ai_robot__sensitive_words
|
||||||
msgid "Sensitive word filtering. Separate keywords with a carriage return."
|
msgid "Sensitive word filtering. Separate keywords with a carriage return."
|
||||||
msgstr "敏感词过滤。请用回车符分隔关键词。"
|
msgstr "使用此文件进行基础过滤 models/lib/sensi_words.txt"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model.fields,field_description:app_chatgpt.field_ai_robot__sequence
|
#: model:ir.model.fields,field_description:app_chatgpt.field_ai_robot__sequence
|
||||||
msgid "Sequence"
|
msgid "Sequence"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__service_end_date
|
||||||
|
msgid "Service End Date"
|
||||||
|
msgstr "服务到期时间"
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__service_start_date
|
||||||
|
msgid "Service Start Date"
|
||||||
|
msgstr "服务开始时间"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -1880,6 +1952,11 @@ msgstr ""
|
|||||||
msgid "Temperature"
|
msgid "Temperature"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model_terms:ir.ui.view,arch_db:app_chatgpt.is_res_config_settings_view
|
||||||
|
msgid "Timout then disconnect(s)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -1902,6 +1979,11 @@ msgstr ""
|
|||||||
msgid "Tokyo tower"
|
msgid "Tokyo tower"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,field_description:app_chatgpt.field_res_users__tokens_total
|
||||||
|
msgid "Total Tokens"
|
||||||
|
msgstr "总使用Token量"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -1959,10 +2041,20 @@ msgstr ""
|
|||||||
msgid "UP! button"
|
msgid "UP! button"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model_terms:ir.ui.view,arch_db:app_chatgpt.app_chatgpt_res_users_form
|
||||||
|
msgid "Usage"
|
||||||
|
msgstr "使用情况"
|
||||||
|
|
||||||
|
#. module: app_chatgpt
|
||||||
|
#: model:ir.model.fields,help:app_chatgpt.field_ai_robot__is_filtering
|
||||||
|
msgid "Use base Filter in dir models/lib/sensi_words.txt"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model,name:app_chatgpt.model_res_users
|
#: model:ir.model,name:app_chatgpt.model_res_users
|
||||||
msgid "User"
|
msgid "User"
|
||||||
msgstr ""
|
msgstr "用户"
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
@@ -11554,8 +11646,6 @@ msgstr ""
|
|||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "hand"
|
msgid "hand"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -12525,7 +12615,6 @@ msgstr ""
|
|||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "ideograph"
|
msgid "ideograph"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -15194,9 +15283,6 @@ msgstr ""
|
|||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "mark"
|
msgid "mark"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -15215,27 +15301,6 @@ msgstr ""
|
|||||||
msgid "mark_as_good. thumbs up"
|
msgid "mark_as_good. thumbs up"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#. odoo-javascript
|
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
|
||||||
msgid "mark_as_neutral. open hands"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#. odoo-javascript
|
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
|
||||||
msgid "mark_as_redundant. waving hand"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#. odoo-javascript
|
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
|
||||||
msgid "mark_as_unhelpful. Need more answer"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -16420,7 +16485,6 @@ msgstr ""
|
|||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "neutral"
|
msgid "neutral"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -17034,7 +17098,6 @@ msgstr ""
|
|||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "open"
|
msgid "open"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -17056,7 +17119,6 @@ msgstr ""
|
|||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "open hands"
|
msgid "open hands"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -19868,13 +19930,6 @@ msgstr ""
|
|||||||
msgid "red-faced"
|
msgid "red-faced"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#. odoo-javascript
|
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
|
||||||
msgid "redundant"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -24802,13 +24857,6 @@ msgstr ""
|
|||||||
msgid "unhappy"
|
msgid "unhappy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#. odoo-javascript
|
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
|
||||||
msgid "unhelpful"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -24949,11 +24997,6 @@ msgstr ""
|
|||||||
msgid "upwards button"
|
msgid "upwards button"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#: model:ir.model.fields,help:app_chatgpt.field_ai_robot__sensitive_words
|
|
||||||
msgid "Use base Filter in dir models/lib/sensi_words.txt"
|
|
||||||
msgstr "使用此文件进行基础过滤 models/lib/sensi_words.txt"
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -25402,7 +25445,6 @@ msgstr ""
|
|||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "wave"
|
msgid "wave"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -25411,7 +25453,6 @@ msgstr ""
|
|||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "waving"
|
msgid "waving"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -27089,13 +27130,6 @@ msgstr ""
|
|||||||
msgid "“monthly amount”"
|
msgid "“monthly amount”"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#. odoo-javascript
|
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
|
||||||
#, python-format
|
|
||||||
msgid "“no vacancy”"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#. odoo-javascript
|
#. odoo-javascript
|
||||||
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
#: code:addons/app_chatgpt/static/src/models_data/emoji_data.js:0
|
||||||
@@ -27159,22 +27193,6 @@ msgstr ""
|
|||||||
msgid "ココ"
|
msgid "ココ"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#: model:ir.model.fields,field_description:app_chatgpt.field_res_config_settings__openapi_context_timeout
|
|
||||||
#: model_terms:ir.ui.view,arch_db:app_chatgpt.is_res_config_settings_view
|
|
||||||
msgid "Connect Timout"
|
|
||||||
msgstr "上下文连接超时"
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#: model_terms:ir.ui.view,arch_db:app_chatgpt.is_res_config_settings_view
|
|
||||||
msgid "After timeout seconds then Disconnect"
|
|
||||||
msgstr "上下文连接超时(秒)"
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
|
||||||
#: model_terms:ir.ui.view,arch_db:app_chatgpt.is_res_config_settings_view
|
|
||||||
msgid "同步配置"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: app_chatgpt
|
#. module: app_chatgpt
|
||||||
#: model:ir.model.fields,help:app_chatgpt.field_res_config_settings__openapi_context_timeout
|
#: model:ir.model.fields,help:app_chatgpt.field_res_config_settings__openapi_context_timeout
|
||||||
msgid "多少秒以内的聊天信息作为上下文继续"
|
msgid "多少秒以内的聊天信息作为上下文继续"
|
||||||
|
|||||||
@@ -6,3 +6,4 @@ from . import ai_robot
|
|||||||
from . import res_partner
|
from . import res_partner
|
||||||
from . import res_users
|
from . import res_users
|
||||||
from . import mail_message
|
from . import mail_message
|
||||||
|
from . import mail_thread
|
||||||
|
|||||||
@@ -73,6 +73,7 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
return False
|
return False
|
||||||
|
|
||||||
def get_ai_post(self, res, sender_id=False, answer_id=False, **kwargs):
|
def get_ai_post(self, res, sender_id=False, answer_id=False, **kwargs):
|
||||||
|
res = self.filter_sensitive_words(res)
|
||||||
return res
|
return res
|
||||||
|
|
||||||
def get_ai_model_info(self):
|
def get_ai_model_info(self):
|
||||||
@@ -108,12 +109,14 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
r_text = 'No response.'
|
r_text = 'No response.'
|
||||||
raise UserError(r_text)
|
raise UserError(r_text)
|
||||||
|
|
||||||
def get_openai(self, data, partner_name='odoo', *args):
|
def get_openai(self, data, sender_id, answer_id, *args):
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
headers = {"Content-Type": "application/json", "Authorization": f"Bearer {self.openapi_api_key}"}
|
headers = {"Content-Type": "application/json", "Authorization": f"Bearer {self.openapi_api_key}"}
|
||||||
R_TIMEOUT = self.ai_timeout or 120
|
R_TIMEOUT = self.ai_timeout or 120
|
||||||
o_url = self.endpoint or "https://api.openai.com/v1/chat/completions"
|
o_url = self.endpoint or "https://api.openai.com/v1/chat/completions"
|
||||||
|
partner_name = 'odoo'
|
||||||
|
# if sender_id:
|
||||||
|
# partner_name = sender_id.name
|
||||||
# 以下处理 open ai
|
# 以下处理 open ai
|
||||||
# 获取模型信息
|
# 获取模型信息
|
||||||
# list_model = requests.get("https://api.openai.com/v1/models", headers=headers)
|
# list_model = requests.get("https://api.openai.com/v1/models", headers=headers)
|
||||||
@@ -142,13 +145,32 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
}
|
}
|
||||||
_logger.warning('=====================open input pdata: %s' % pdata)
|
_logger.warning('=====================open input pdata: %s' % pdata)
|
||||||
response = requests.post(o_url, data=json.dumps(pdata), headers=headers, timeout=R_TIMEOUT)
|
response = requests.post(o_url, data=json.dumps(pdata), headers=headers, timeout=R_TIMEOUT)
|
||||||
res = response.json()
|
try:
|
||||||
if 'choices' in res:
|
res = response.json()
|
||||||
# for rec in res:
|
if 'usage' in res:
|
||||||
# res = rec['message']['content']
|
usage = res['usage']
|
||||||
res = '\n'.join([x['message']['content'] for x in res['choices']])
|
prompt_tokens = usage['prompt_tokens']
|
||||||
res = self.filter_sensitive_words(res)
|
completion_tokens = usage['completion_tokens']
|
||||||
return res
|
total_tokens = usage['total_tokens']
|
||||||
|
vals = {
|
||||||
|
'human_prompt_tokens': sender_id.human_prompt_tokens + prompt_tokens,
|
||||||
|
'ai_completion_tokens': sender_id.ai_completion_tokens + completion_tokens,
|
||||||
|
'tokens_total': sender_id.tokens_total + total_tokens,
|
||||||
|
'used_number': sender_id.used_number + 1,
|
||||||
|
}
|
||||||
|
if not sender_id.first_ask_time:
|
||||||
|
ask_date = response.headers.get("Date")
|
||||||
|
vals.update({
|
||||||
|
'first_ask_time': ask_date
|
||||||
|
})
|
||||||
|
sender_id.write(vals)
|
||||||
|
if 'choices' in res:
|
||||||
|
# for rec in res:
|
||||||
|
# res = rec['message']['content']
|
||||||
|
res = '\n'.join([x['message']['content'] for x in res['choices']])
|
||||||
|
return res
|
||||||
|
except Exception as e:
|
||||||
|
_logger.warning("Get Response Json failed: %s", e)
|
||||||
else:
|
else:
|
||||||
pdata = {
|
pdata = {
|
||||||
"model": self.ai_model,
|
"model": self.ai_model,
|
||||||
@@ -165,12 +187,11 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
res = response.json()
|
res = response.json()
|
||||||
if 'choices' in res:
|
if 'choices' in res:
|
||||||
res = '\n'.join([x['text'] for x in res['choices']])
|
res = '\n'.join([x['text'] for x in res['choices']])
|
||||||
res = self.filter_sensitive_words(res)
|
|
||||||
return res
|
return res
|
||||||
|
|
||||||
return "获取结果超时,请重新跟我聊聊。"
|
return "获取结果超时,请重新跟我聊聊。"
|
||||||
|
|
||||||
def get_azure(self, data, partner_name='odoo', *args):
|
def get_azure(self, data, sender_id, answer_id, *args):
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
# only for azure
|
# only for azure
|
||||||
openai.api_type = self.provider
|
openai.api_type = self.provider
|
||||||
@@ -196,12 +217,10 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
|
|
||||||
if 'choices' in response:
|
if 'choices' in response:
|
||||||
res = response['choices'][0]['text'].replace(' .', '.').strip()
|
res = response['choices'][0]['text'].replace(' .', '.').strip()
|
||||||
res = self.filter_sensitive_words(res)
|
|
||||||
return res
|
return res
|
||||||
else:
|
else:
|
||||||
_logger.warning('=====================azure output data: %s' % response)
|
_logger.warning('=====================azure output data: %s' % response)
|
||||||
return _('Azure no response')
|
return _('Azure no response')
|
||||||
|
|
||||||
|
|
||||||
@api.onchange('provider')
|
@api.onchange('provider')
|
||||||
def _onchange_provider(self):
|
def _onchange_provider(self):
|
||||||
@@ -216,7 +235,9 @@ GPT-3 A set of models that can understand and generate natural language
|
|||||||
s = self.sensitive_words
|
s = self.sensitive_words
|
||||||
if s:
|
if s:
|
||||||
search.SetKeywords(s.split('\n'))
|
search.SetKeywords(s.split('\n'))
|
||||||
data = search.Replace(text=data)
|
else:
|
||||||
|
search.SetKeywords([])
|
||||||
|
data = search.Replace(text=data)
|
||||||
return data
|
return data
|
||||||
else:
|
else:
|
||||||
return data
|
return data
|
||||||
|
|||||||
@@ -1197,7 +1197,7 @@ WG
|
|||||||
清华同方
|
清华同方
|
||||||
毛江独裁
|
毛江独裁
|
||||||
妹妹被操的淫水直流
|
妹妹被操的淫水直流
|
||||||
本?拉登
|
本拉登
|
||||||
奶头
|
奶头
|
||||||
99BBS
|
99BBS
|
||||||
嫩穴美女挖嫩穴淫女嫩穴俱乐部
|
嫩穴美女挖嫩穴淫女嫩穴俱乐部
|
||||||
@@ -1678,7 +1678,6 @@ fuck新手指导员
|
|||||||
骚妇掰B
|
骚妇掰B
|
||||||
超级乐者
|
超级乐者
|
||||||
战牌
|
战牌
|
||||||
ur
|
|
||||||
轮大
|
轮大
|
||||||
江湖 淫娘
|
江湖 淫娘
|
||||||
yuming
|
yuming
|
||||||
@@ -1727,7 +1726,6 @@ sb
|
|||||||
诛仙
|
诛仙
|
||||||
毛信息产业部
|
毛信息产业部
|
||||||
毛四川独立
|
毛四川独立
|
||||||
ri
|
|
||||||
再奸
|
再奸
|
||||||
法惀功
|
法惀功
|
||||||
發@淪
|
發@淪
|
||||||
@@ -3699,7 +3697,7 @@ fuck新闻管制
|
|||||||
piss
|
piss
|
||||||
和两勇男玩39P
|
和两勇男玩39P
|
||||||
rfa
|
rfa
|
||||||
本?拉登
|
本拉登
|
||||||
毛meimei黄站
|
毛meimei黄站
|
||||||
米开朗基罗
|
米开朗基罗
|
||||||
温暖湿润的感觉笼罩龟头周围
|
温暖湿润的感觉笼罩龟头周围
|
||||||
@@ -3741,7 +3739,7 @@ mo li bao bei
|
|||||||
粉红的的奶頭粉嫩的阴唇
|
粉红的的奶頭粉嫩的阴唇
|
||||||
香港淫穴
|
香港淫穴
|
||||||
網捷信
|
網捷信
|
||||||
欽 本 立
|
欽本立
|
||||||
谢中之
|
谢中之
|
||||||
龟头挤进了姐姐的小穴
|
龟头挤进了姐姐的小穴
|
||||||
花园bt亚洲激情区
|
花园bt亚洲激情区
|
||||||
@@ -7731,7 +7729,7 @@ Priston Tale
|
|||||||
soma
|
soma
|
||||||
K他命
|
K他命
|
||||||
李文斌
|
李文斌
|
||||||
钦 本 立
|
钦本立
|
||||||
卓奧
|
卓奧
|
||||||
奥运
|
奥运
|
||||||
新诗年鉴
|
新诗年鉴
|
||||||
|
|||||||
@@ -45,7 +45,9 @@ class Channel(models.Model):
|
|||||||
return '\n'.join(prompt[::-1])
|
return '\n'.join(prompt[::-1])
|
||||||
|
|
||||||
def get_ai(self, ai, prompt, partner_name, channel, user_id, message):
|
def get_ai(self, ai, prompt, partner_name, channel, user_id, message):
|
||||||
res = ai.get_ai(prompt, partner_name)
|
sender_id = message.create_uid.partner_id
|
||||||
|
answer_id = user_id.partner_id
|
||||||
|
res = ai.get_ai(prompt, sender_id, answer_id)
|
||||||
if res:
|
if res:
|
||||||
res = res.replace('\n', '<br/>')
|
res = res.replace('\n', '<br/>')
|
||||||
channel.with_user(user_id).message_post(body=res, message_type='comment', subtype_xmlid='mail.mt_comment', parent_id=message.id)
|
channel.with_user(user_id).message_post(body=res, message_type='comment', subtype_xmlid='mail.mt_comment', parent_id=message.id)
|
||||||
|
|||||||
18
app_chatgpt/models/mail_thread.py
Normal file
18
app_chatgpt/models/mail_thread.py
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
from odoo import fields, models, api, _
|
||||||
|
from .lib.WordsSearch import WordsSearch
|
||||||
|
|
||||||
|
|
||||||
|
class MailThread(models.AbstractModel):
|
||||||
|
_inherit = "mail.thread"
|
||||||
|
|
||||||
|
@api.returns('mail.message', lambda value: value.id)
|
||||||
|
def message_post(self, **kwargs):
|
||||||
|
self.ensure_one()
|
||||||
|
search = WordsSearch()
|
||||||
|
search.SetKeywords([])
|
||||||
|
body = kwargs.get('body', False)
|
||||||
|
body = search.Replace(text=body)
|
||||||
|
kwargs.update({'body': body})
|
||||||
|
return super(MailThread, self).message_post(**kwargs)
|
||||||
@@ -14,3 +14,13 @@ class ResUsers(models.Model):
|
|||||||
], string='Allowed Conversation Mode', default='all', ondelete='set default')
|
], string='Allowed Conversation Mode', default='all', ondelete='set default')
|
||||||
gpt_wl_users = fields.Many2many('res.users', 'res_users_res_users_rel', 'robot_id', 'user_id', string='Allowed Users', domain="[('id', '!=', id)]")
|
gpt_wl_users = fields.Many2many('res.users', 'res_users_res_users_rel', 'robot_id', 'user_id', string='Allowed Users', domain="[('id', '!=', id)]")
|
||||||
gpt_demo_time = fields.Integer('Default Demo Time', default=0)
|
gpt_demo_time = fields.Integer('Default Demo Time', default=0)
|
||||||
|
|
||||||
|
first_ask_time = fields.Datetime('First Ask Time')
|
||||||
|
service_start_date = fields.Datetime('Service Start Date')
|
||||||
|
service_end_date = fields.Datetime('Service End Date')
|
||||||
|
used_number = fields.Integer('Number of Used')
|
||||||
|
max_number = fields.Integer('Max Number of Call')
|
||||||
|
human_prompt_tokens = fields.Integer('Human Prompt Tokens')
|
||||||
|
ai_completion_tokens = fields.Integer('AI Completion Tokens')
|
||||||
|
tokens_total = fields.Integer('Total Tokens')
|
||||||
|
|
||||||
|
|||||||
@@ -15,6 +15,18 @@
|
|||||||
<field name="gpt_demo_time"/>
|
<field name="gpt_demo_time"/>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
|
<group>
|
||||||
|
<group string="Usage">
|
||||||
|
<field name="first_ask_time"/>
|
||||||
|
<field name="service_start_date"/>
|
||||||
|
<field name="service_end_date"/>
|
||||||
|
<field name="used_number"/>
|
||||||
|
<field name="max_number"/>
|
||||||
|
<field name="human_prompt_tokens"/>
|
||||||
|
<field name="ai_completion_tokens"/>
|
||||||
|
<field name="tokens_total"/>
|
||||||
|
</group>
|
||||||
|
</group>
|
||||||
</page>
|
</page>
|
||||||
</xpath>
|
</xpath>
|
||||||
</field>
|
</field>
|
||||||
|
|||||||
Reference in New Issue
Block a user