API de PaLM: Guía de inicio rápido de texto con Node.js

Ver en ai.google.dev Ejecutar en Google Colab Ver código fuente en GitHub

Obtén una clave de API

Para comenzar, deberás obtener una clave de API. Configúralo como una variable de entorno:

import os
os.environ["API_KEY"] = "<YOUR API KEY>"

Instala el cliente de la API

En un directorio nuevo, inicializa un proyecto de Node.js con npm y, luego, instala la biblioteca google-auth:

npm init -y

npm install google-auth-library
Wrote to /content/package.json:

{
  "name": "content",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "@google-ai/generativelanguage": "^1.0.1",
    "google-auth-library": "^9.0.0"
  },
  "devDependencies": {},
  "description": ""
}


+ google-auth-library@9.0.0
updated 1 package and audited 74 packages in 1.105s

3 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
npm WARN content@1.0.0 No description
npm WARN content@1.0.0 No repository field.

A continuación, deberás instalar la biblioteca cliente de Generative Language:

npm install @google-ai/generativelanguage

+ @google-ai/generativelanguage@1.0.1
updated 1 package and audited 74 packages in 2.126s

3 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
npm WARN content@1.0.0 No description
npm WARN content@1.0.0 No repository field.

Generación de mensajes

Crea un archivo nuevo index.js, agrega el siguiente código y proporciona tu clave de API a través de la variable de entorno API_KEY:

%%writefile index.js
const { TextServiceClient } =
  require("@google-ai/generativelanguage").v1beta2;

const { GoogleAuth } = require("google-auth-library");

const MODEL_NAME = "models/text-bison-001";
const API_KEY = process.env.API_KEY;

const client = new TextServiceClient({
  authClient: new GoogleAuth().fromAPIKey(API_KEY),
});

const prompt = "Repeat after me: one, two,";

client
  .generateText({
    model: MODEL_NAME,
    prompt: {
      text: prompt,
    },
  })
  .then((result) => {
    console.log(JSON.stringify(result, null, 2));
  });
Overwriting index.js

Luego, ejecuta la secuencia de comandos:


node index.js
[
  {
    "candidates": [
      {
        "safetyRatings": [
          {
            "category": "HARM_CATEGORY_DEROGATORY",
            "probability": "NEGLIGIBLE"
          },
          {
            "category": "HARM_CATEGORY_TOXICITY",
            "probability": "NEGLIGIBLE"
          },
          {
            "category": "HARM_CATEGORY_VIOLENCE",
            "probability": "NEGLIGIBLE"
          },
          {
            "category": "HARM_CATEGORY_SEXUAL",
            "probability": "NEGLIGIBLE"
          },
          {
            "category": "HARM_CATEGORY_MEDICAL",
            "probability": "NEGLIGIBLE"
          },
          {
            "category": "HARM_CATEGORY_DANGEROUS",
            "probability": "NEGLIGIBLE"
          }
        ],
        "output": "One, two, three, four."
      }
    ],
    "filters": [],
    "safetyFeedback": []
  },
  null,
  null
]