谷歌Palm 2模型与API应用指南

大型语言模型(LLMs)能够以类似人类的方式生成文本,它们被广泛应用于自然语言处理(NLP)领域,包括聊天机器人、文本摘要器、翻译应用和虚拟助手等。谷歌最近发布了其下一代模型——Palm 2,该模型在高级科学和数学运算方面表现出色,并且被用于推理和语言翻译。Palm 2模型经过100多种口语和20多种编程语言的训练,使其能够将一种编程语言翻译成另一种,例如将Python代码翻译成R或将JavaScript代码翻译成TypeScript等。此外,Palm 2还能够生成成语和短语,并且能够将复杂任务分解为更简单的任务,相较于之前的模型有了显著的提升。

学习目标

  • 了解谷歌的Palm API
  • 学习如何通过生成API密钥来访问Palm API
  • 使用Python学习如何使用文本模型生成简单文本
  • 学习如何使用Python创建简单的聊天机器人
  • 讨论如何将LangChain与Palm API结合使用

目录

  1. Palm API是什么?
  2. 如何访问Palm API?
  3. 设置环境
  4. 如何生成文本?
  5. 使用Palm API与LangChain
  6. 结论
  7. 常见问题解答

Palm API是什么?

通过Palm API,可以访问谷歌的生成性AI模型的能力,并开发出有趣的AI驱动应用程序。如果想直接从浏览器与Palm 2模型交互,可以使用基于浏览器的IDE“MakerSuite”。但是,也可以通过Palm API将大型语言模型集成到应用程序中,并使用公司的数据构建AI驱动的应用程序。Palm API设计了三种不同的提示接口,可以使用其中任何一个来开始使用Palm API。它们是:

  • 文本提示:可以使用名为“text-bison-001”的模型生成简单文本。使用文本提示,可以生成文本、生成代码、编辑文本、检索信息、提取数据等。
  • 数据提示:这些允许以表格格式构建提示。
  • 聊天提示:聊天提示用于构建对话。可以使用名为“chat-bison-001”的模型来使用聊天服务。

如何访问Palm API?

访问网站 并加入maker suite。将被添加到等待列表中,可能在24小时内获得访问权限。

生成API密钥:需要获得自己的API密钥来使用API。可以使用API密钥将应用程序连接到Palm API,并访问其服务。一旦账户注册完成,将能够生成它。接下来,按照下图所示生成API密钥,并保存API密钥,因为稍后会使用它。

设置环境

要使用Python与API一起使用,安装它使用命令:

pip install google-generativeai

接下来,使用之前生成的API密钥进行配置。

import google.generativeai as palm palm.configure(api_key=API_KEY)

要列出可用的模型,编写以下代码:

models = [model for model in palm.list_models()] for model in models: print(model.name)

输出:

models/chat-bison-001 models/text-bison-001 models/embedding-gecko-001

如何生成文本?

使用“text-bison-001”模型来生成文本,并传递GenerateTextRequest。generate_text()函数接受两个参数,即模型和提示。将模型作为“text-bison-001”,提示包含输入字符串。

在下面的示例中,传递了带有模型名称的model_id变量和一个包含输入文本的prompt变量。然后将model_id作为模型,prompt作为提示传递给generate_text()方法。

model_id="models/text-bison-001" prompt='''write a cover letter for a data science job applicaton. Summarize it to two paragraphs of 50 words each. ''' completion=palm.generate_text( model=model_id, prompt=prompt, temperature=0.99, max_output_tokens=800, ) print(completion.result)

输出:

定义了一个while循环,它请求输入并生成回复。response.last语句打印响应。

model_id="models/chat-bison-001" prompt='I need help with a job interview for a data analyst job. Can you help me?' examples=[ ('Hello', 'Hi there mr. How can I be assistant?'), ('I want to get a High paying Job','I can work harder') ] response=palm.chat(messages=prompt, temperature=0.2, context="Speak like a CEO", examples=examples) for messages in response.messages: print(messages['author'],messages['content'])

输出:

while True: s=input() response=response.reply(s) print(response.last)

使用Palm API与LangChain

LangChain是一个开源框架,允许将大型语言模型连接到应用程序中。要将Palm API与langchain一起使用,导入GooglePalmEmbeddings从langchain.embeddings。Langchain有一个嵌入类,为各种文本嵌入模型提供了一个标准接口,如OpenAI、HuggingFace等。

from langchain.embeddings import GooglePalmEmbeddings from langchain.llms import GooglePalm llm=GooglePalm(google_api_key=API_KEY) llm.temperature=0.2 prompts=["How to Calculate the area of a triangle?","How many sides are there for a polygon?"] llm_result= llm._generate(prompts) res=llm_result.generations print(res[0][0].text) print(res[1][0].text)

输出:

1. **Find the base and height of the triangle. ** The base is the length of the side of the triangle that is parallel to the ground, and the height is the length of the line segment that is perpendicular to the base and intersects the opposite vertex. 2. **Multiply the base and height and divide by 2. ** The formula for the area of a triangle is A = 1/2 * b * h. For example, if a triangle has a base of 5 cm and a height of 4 cm, its area would be 1/2 * 5 * 4 = 10 cm2. 3
  • Palm API允许用户使用大型语言模型开发应用程序。
  • Palm API提供多种文本生成服务,如文本服务生成文本和聊天服务生成聊天对话。
  • Google generative-ai是Palm API Python库,可以使用pip命令轻松安装。
Q1. 如何在Python中使用谷歌Palm?
A. 要快速开始使用palm API在python中,可以安装一个库使用pip命令 – pip install google generative-ai。
Q2. 谷歌Palm有API吗?
A. 是的,可以使用Palm API访问谷歌的大型语言模型并开发应用程序。
Q3. Palm API是免费的吗?
A. 是的,谷歌的Palm API和MakerSuite可供公众预览。
Q4. 谷歌Palm能写代码吗?
A. 谷歌的Palm 2模型经过20多种编程语言的训练,并且可以生成多种编程语言的代码。
Q5. Palm API有什么用?
A. Palm API提供文本和聊天服务。它提供多种文本生成能力。
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485