@@ -1,6 +1,5 @@
|
|||||||
import json
|
import json
|
||||||
import logging
|
|
||||||
import time
|
|
||||||
|
|
||||||
import requests
|
import requests
|
||||||
from dashscope import Generation
|
from dashscope import Generation
|
||||||
@@ -9,8 +8,6 @@ from retry import retry
|
|||||||
|
|
||||||
from app.core.config import QWEN_API_KEY
|
from app.core.config import QWEN_API_KEY
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
|
||||||
|
|
||||||
|
|
||||||
# os.environ["http_proxy"] = "http://127.0.0.1:7890"
|
# os.environ["http_proxy"] = "http://127.0.0.1:7890"
|
||||||
# os.environ["https_proxy"] = "http://127.0.0.1:7890"
|
# os.environ["https_proxy"] = "http://127.0.0.1:7890"
|
||||||
@@ -20,35 +17,35 @@ logger = logging.getLogger(__name__)
|
|||||||
# openai_api_key=OPENAI_API_KEY,
|
# openai_api_key=OPENAI_API_KEY,
|
||||||
# temperature=0)
|
# temperature=0)
|
||||||
|
|
||||||
# prefix_for_llama = (
|
prefix_for_llama = (
|
||||||
# """
|
"""
|
||||||
# Translate everything within the brackets [] into English.
|
Translate everything within the brackets [] into English.
|
||||||
# Never translate or modify any English input.
|
Never translate or modify any English input.
|
||||||
# The input must be fully translated into coherent English sentences.
|
The input must be fully translated into coherent English sentences.
|
||||||
# Please only output the translated result.\n
|
Please only output the translated result.\n
|
||||||
# """
|
"""
|
||||||
# )
|
)
|
||||||
|
|
||||||
|
|
||||||
def translate_to_en(text):
|
def translate_to_en(text):
|
||||||
# template = (
|
template = (
|
||||||
# """You are a translation expert, proficient in various languages.
|
"""You are a translation expert, proficient in various languages.
|
||||||
# And can translate various languages into English.
|
And can translate various languages into English.
|
||||||
# Please translate to grammatically correct English regardless of the input language.
|
Please translate to grammatically correct English regardless of the input language.
|
||||||
# If the input is already in English, or consists of letters or numbers such as "cat", "abc", or "1",
|
If the input is already in English, or consists of letters or numbers such as "cat", "abc", or "1",
|
||||||
# output the input text exactly as it is without any modifications or additions.
|
output the input text exactly as it is without any modifications or additions.
|
||||||
# If there are grammatical errors, correct them and then output the sentence."""
|
If there are grammatical errors, correct them and then output the sentence."""
|
||||||
# )
|
)
|
||||||
#
|
|
||||||
# prefix = (
|
prefix = (
|
||||||
# """
|
"""
|
||||||
# Translate everything within the brackets [] into English.
|
Translate everything within the brackets [] into English.
|
||||||
# Never translate or modify any English input.
|
Never translate or modify any English input.
|
||||||
# The input must be fully translated into coherent English sentences.
|
The input must be fully translated into coherent English sentences.
|
||||||
# Never present the translation results in the format
|
Never present the translation results in the format
|
||||||
# "The translation of \"Material suave\" into English would be \"Smooth material.\"". Instead, directly output "Smooth material".
|
"The translation of \"Material suave\" into English would be \"Smooth material.\"". Instead, directly output "Smooth material".
|
||||||
# """
|
"""
|
||||||
# )
|
)
|
||||||
messages = [
|
messages = [
|
||||||
# {
|
# {
|
||||||
# Translate the entire text and ensure the output is a complete and coherent sentence in English.
|
# Translate the entire text and ensure the output is a complete and coherent sentence in English.
|
||||||
@@ -57,7 +54,7 @@ def translate_to_en(text):
|
|||||||
# },
|
# },
|
||||||
{
|
{
|
||||||
# "content": input('请输入:'), # 用户message
|
# "content": input('请输入:'), # 用户message
|
||||||
"content": text, # 用户message
|
"content": prefix + text, # 用户message
|
||||||
"role": "user"
|
"role": "user"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -77,7 +74,7 @@ def translate_to_en(text):
|
|||||||
def get_response(messages):
|
def get_response(messages):
|
||||||
response = Generation.call(
|
response = Generation.call(
|
||||||
model='qwen-turbo',
|
model='qwen-turbo',
|
||||||
api_key=QWEN_API_KEY,
|
api_key= QWEN_API_KEY,
|
||||||
messages=messages,
|
messages=messages,
|
||||||
# seed=random.randint(1, 10000), # 设置随机数种子seed,如果没有设置,则随机数种子默认为1234
|
# seed=random.randint(1, 10000), # 设置随机数种子seed,如果没有设置,则随机数种子默认为1234
|
||||||
result_format='message', # 将输出设置为message形式
|
result_format='message', # 将输出设置为message形式
|
||||||
@@ -87,39 +84,37 @@ def get_response(messages):
|
|||||||
|
|
||||||
|
|
||||||
def get_translation_from_llama3(text):
|
def get_translation_from_llama3(text):
|
||||||
start_time = time.time()
|
url = "http://localhost:11434/api/generate"
|
||||||
url = "http://10.1.1.240:11434/api/generate"
|
|
||||||
# url = "http://10.1.1.240:1143/api/generate"
|
# url = "http://10.1.1.240:1143/api/generate"
|
||||||
|
|
||||||
# prompt = f"System: {prefix_for_llama}\nUser:[{text}]"
|
prompt = f"System: {prefix_for_llama}\nUser:[{text}]"
|
||||||
|
|
||||||
# 创建请求的负载
|
# 创建请求的负载
|
||||||
payload = {
|
payload = {
|
||||||
"model": "translator",
|
"model": "llama3.2",
|
||||||
"prompt": f"[{text}]",
|
"prompt": prompt,
|
||||||
"stream": False
|
"stream": False
|
||||||
}
|
}
|
||||||
|
|
||||||
# 将负载转换为 JSON 格式
|
# 将负载转换为 JSON 格式
|
||||||
headers = {'Content-Type': 'application/json'}
|
headers = {'Content-Type': 'application/json'}
|
||||||
response = requests.post(url, data=json.dumps(payload), headers=headers)
|
response = requests.post(url, data=json.dumps(payload), headers=headers)
|
||||||
|
|
||||||
# 处理响应
|
# 处理响应
|
||||||
if response.status_code == 200:
|
if response.status_code == 200:
|
||||||
# print("Response from server:")
|
# print("Response from server:")
|
||||||
# print(response.json())
|
# print(response.json())
|
||||||
resp = json.loads(response.content).get("response")
|
resp = json.loads(response.content).get("response")
|
||||||
logger.info(f"translation server runtime is {time.time() - start_time} , response is {resp}")
|
|
||||||
print("input : {}, translate result : {}".format(text, resp))
|
print("input : {}, translate result : {}".format(text, resp))
|
||||||
return resp
|
return resp
|
||||||
else:
|
else:
|
||||||
logger.info(f"translation server runtime is {time.time() - start_time} , response is {response.content}")
|
|
||||||
print(f"Request failed with status code {response.status_code}")
|
print(f"Request failed with status code {response.status_code}")
|
||||||
print(response.text)
|
print(response.text)
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
"""Main function"""
|
"""Main function"""
|
||||||
text = get_translation_from_llama3("[火焰]")
|
text = translate_to_en("fire")
|
||||||
print(text)
|
print(text)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user