使用langchain_aws模块实现集成bedrock调用模型,测试源码
- from langchain_aws.chat_models import ChatBedrock
- import json
- def invoke_with_text(model_id, message):
- llm = ChatBedrock(model_id=model_id, region_name="us-east-1")
- res = llm.invoke(message)
- print(f"模型返回的结果:\n {res.content}")
- # print(f"id: {res.id}")
- # print(f"additional_kwargs: {res.additional_kwargs}")
- # print(f"response_metadata: {res.response_metadata}")
- def invoke_with_json(model_id, input_text):
- llm = ChatBedrock(model_id=model_id, region_name="us-east-1")
- prompt = {
- "text_prompts": [
- {"text": f"您好,我是一个翻译官。请将以下句子翻译成英文:\n\n{input_text}"}
- ],
- "cfg_scale": 10,
- "seed": 0,
- "steps": 50
- }
- response = llm.invoke(json.dumps(prompt))
- result = response.content
- print(f"模型返回的结果: {result}")
- def translate(model_id, input_text, target_lang="en"):
- llm = ChatBedrock(model_id=model_id, region_name="us-east-1")
- prompt = {
- "text_prompts": [
- {"text": f"您好,我是一个翻译官。请将以下句子翻译成{target_lang}语:\n\n{input_text}"}
- ],
- "cfg_scale": 10,
- "seed": 0,
- "steps": 50
- }
- response = llm.invoke(json.dumps(prompt))
- result = response.content
- print(f"模型返回的结果: {result}")
- if __name__=="__main__":
- # 使用文本输入调用
- model_id = "anthropic.claude-3-sonnet-20240229-v1:0"
- message = "您好,您是一个翻译官,烦请将如下语句翻译成英文: 关于这个问题的解决方案,我们将会在后面测试验证下,然后在将手册同步给您"
- invoke_with_text(model_id, message)
- # 使用 JSON 输入调用
- input_text = "关于这个问题的解决方案,我们将会在后面测试验证下,然后在将手册同步给您"
- invoke_with_json(model_id, input_text)
- # 翻译成英文
- translate(model_id, input_text, target_lang="en")
- # 翻译成西班牙语
- translate(model_id, input_text, target_lang="es")
复制代码 运行之后的效果如下
模型返回的效果:
Here is the translation to English:
Regarding the solution to this issue, we will conduct tests and verification later, then we will sync the manual to you.
模型返回的效果: Here is the translation to English:
Regarding the solution to this issue, we will validate it through further testing later on, and then synchronize the manual with you.
模型返回的效果: Here is the translation to English:
Regarding the solution to this issue, we will perform further tests and verification, and then synchronize the manual with you.
模型返回的效果: Aquí está la traducción al español:
Sobre la solución a este problema, la validaremos con pruebas más adelante y luego sincronizaremos el manual con usted.
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |