Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.apimart.ai/llms.txt

Use this file to discover all available pages before exploring further.

Introducción

Gemini CLI es la herramienta de línea de comandos oficial de Google que permite a los desarrolladores interactuar con los modelos de IA Gemini desde el terminal. Tras configurar la API de APIMart, puede usar los modelos avanzados de APIMart —GPT, Claude y Gemini— en Gemini CLI.

Requisitos previos

Antes de comenzar:
  1. Node.js y npm instalados
    Descargue e instale desde el sitio web de Node.js (se recomienda v16 o superior)
  2. Clave de API de APIMart
    Inicie sesión en la Consola de APIMart y copie su clave de API (comienza con sk-)
Consejo: Si aún no tiene una cuenta en APIMart, regístrese primero en APIMart y cree una clave de API.

Paso 1: Instalar Gemini CLI

1.1 Instalación global

Instale Gemini CLI globalmente con npm:
npm install -g @google/gemini-cli

1.2 Verificar la instalación

Compruebe que la CLI está disponible:
gemini --version
Si se imprime un número de versión, la instalación fue correcta.
Consejo: Si no se encuentra el comando, reinicie el terminal o verifique la configuración del PATH global de npm.

Paso 2: Configurar la API de APIMart

2.1 Variables de entorno temporales

Para pruebas o uso puntual; los valores se borran al cerrar el terminal. Windows (PowerShell):
$env:GEMINI_API_KEY = "sk-xxxxxxxxxxxx"
$env:GEMINI_BASE_URL = "https://api.apimart.ai/v1"
macOS/Linux (Bash):
export GEMINI_API_KEY="sk-xxxxxxxxxxxx"
export GEMINI_BASE_URL="https://api.apimart.ai/v1"

2.2 Variables de entorno permanentes (recomendado)

Persista la configuración para que los nuevos shells la carguen automáticamente. Windows (PowerShell):
  1. Ejecute PowerShell como Administrador
  2. Configure variables de entorno a nivel de usuario:
[System.Environment]::SetEnvironmentVariable('GEMINI_API_KEY', 'sk-xxxxxxxxxxxx', 'User')
[System.Environment]::SetEnvironmentVariable('GEMINI_BASE_URL', 'https://api.apimart.ai/v1', 'User')
  1. Reinicie PowerShell o recargue las variables:
$env:GEMINI_API_KEY = [System.Environment]::GetEnvironmentVariable('GEMINI_API_KEY', 'User')
$env:GEMINI_BASE_URL = [System.Environment]::GetEnvironmentVariable('GEMINI_BASE_URL', 'User')
macOS/Linux (Bash):
  1. Edite su archivo rc del shell:
# Bash
nano ~/.bashrc

# Zsh (default on macOS)
nano ~/.zshrc
  1. Añada:
# APIMart Gemini CLI
export GEMINI_API_KEY="sk-xxxxxxxxxxxx"
export GEMINI_BASE_URL="https://api.apimart.ai/v1"
  1. Recargue:
source ~/.bashrc   # Bash
source ~/.zshrc    # Zsh

2.3 Usar un archivo .env

Cree .env en su proyecto:
# .env
GEMINI_API_KEY=sk-xxxxxxxxxxxx
GEMINI_BASE_URL=https://api.apimart.ai/v1
Cargue las variables antes de ejecutar Gemini: macOS/Linux:
export $(cat .env | xargs) && gemini chat
Windows (PowerShell):
Get-Content .env | ForEach-Object {
    $name, $value = $_.split('=')
    Set-Content env:\$name $value
}
gemini chat
Importante: - Reemplace sk-xxxxxxxxxxxx con su clave real de la Consola de APIMart - Establezca GEMINI_BASE_URL en https://api.apimart.ai/v1 para que Gemini CLI se comunique con APIMart - Añada .env a .gitignore para que las claves no se confirmen al repositorio

2.4 Verificar la configuración

macOS/Linux:
echo $GEMINI_API_KEY
echo $GEMINI_BASE_URL
Windows (PowerShell):
echo $env:GEMINI_API_KEY
echo $env:GEMINI_BASE_URL
Si los valores parecen correctos, la configuración fue correcta.

Paso 3: Usar Gemini CLI

3.1 Chat básico

Sesión interactiva:
gemini chat
Prompt único:
gemini "Give a short overview of the history of artificial intelligence"

3.2 Elegir un modelo

gemini chat --model gpt-4o
O:
gemini "Write a Python quicksort implementation" --model claude-sonnet-4-5-20250929

3.3 Leer prompts desde un archivo

gemini --input prompt.txt
O canalizar:
cat prompt.txt | gemini

3.4 Guardar la salida en un archivo

gemini "Generate a React component" --output component.jsx

Paso 4: Llamar a APIMart desde su código

4.1 SDK de Python

import openai

# APIMart
openai.api_key = "sk-xxxxxxxxxxxx"  # Your APIMart API key
openai.api_base = "https://api.apimart.ai/v1"

response = openai.ChatCompletion.create(
    model="gemini-2.0-flash-exp",
    messages=[
        {"role": "user", "content": "Hi—please introduce yourself"}
    ]
)

print(response.choices[0].message.content)

4.2 JavaScript / TypeScript

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: "sk-xxxxxxxxxxxx",
  baseURL: "https://api.apimart.ai/v1",
});

async function main() {
  const completion = await client.chat.completions.create({
    model: "gemini-2.0-flash-exp",
    messages: [{ role: "user", content: "Hi—please introduce yourself" }],
  });

  console.log(completion.choices[0].message.content);
}

main();

4.3 cURL

curl https://api.apimart.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-xxxxxxxxxxxx" \
  -d '{
    "model": "gemini-2.0-flash-exp",
    "messages": [
      {"role": "user", "content": "Hi—please introduce yourself"}
    ]
  }'

Paso 5: Elegir un modelo

Modelos recomendados

APIMart admite muchos modelos; elija según la tarea y el presupuesto. Gemini
Nombre del modeloID del modeloCaracterísticasRecomendado para
Gemini 2.0 Flashgemini-2.0-flash-expRápido, multimodalRespuestas rápidas, visión + texto
Gemini 2.5 Progemini-2.5-proGran capacidadProblemas difíciles, análisis
Gemini 2.5 Flashgemini-2.5-flashMuy receptivoChat en tiempo real, trabajos por lotes
GPT
Nombre del modeloID del modeloCaracterísticasRecomendado para
GPT-5gpt-5Primer nivelRazonamiento, escritura creativa
GPT-4ogpt-4oAlta calidadChat general, contenido
GPT-4o Minigpt-4o-miniEconómicoTareas simples, alto volumen
Claude
Nombre del modeloID del modeloCaracterísticasRecomendado para
Claude Sonnet 4.5claude-sonnet-4-5-20250929Razonamiento potenteCódigo, lógica
Claude Haiku 4.5claude-haiku-4-5-20251001Muy rápidoPreguntas y respuestas, chat de baja latencia
Selecciones rápidas: - 🚀 Stack al estilo Google: gemini-2.0-flash-exp, gemini-2.5-pro - 💡 Programación: claude-sonnet-4-5-20250929, gpt-5 - 💰 Costo: gpt-4o-mini, claude-haiku-4-5-20251001 - ⚡ Velocidad: gemini-2.0-flash-exp, gpt-4o-mini

Características avanzadas

Multimodal (imágenes)

Con un modelo multimodal como Gemini 2.0 Flash:
response = openai.ChatCompletion.create(
    model="gemini-2.0-flash-exp",
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "text", "text": "What’s in this image?"},
                {
                    "type": "image_url",
                    "image_url": {
                        "url": "https://example.com/image.jpg"
                    }
                }
            ]
        }
    ]
)

Streaming

Transmita tokens a medida que llegan:
stream = openai.ChatCompletion.create(
    model="gemini-2.0-flash-exp",
    messages=[{"role": "user", "content": "Write a short poem about spring"}],
    stream=True
)

for chunk in stream:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end='')

Ajustar parámetros

Modele la aleatoriedad y la longitud:
response = openai.ChatCompletion.create(
    model="gemini-2.0-flash-exp",
    messages=[{"role": "user", "content": "Your question"}],
    temperature=0.7,        # randomness (0–2)
    max_tokens=2000,        # max output length
    top_p=0.9,              # nucleus sampling
    presence_penalty=0,     # topic diversity
    frequency_penalty=0     # repetition penalty
)

Preguntas frecuentes

Q1: “Invalid API key” o errores de autenticación

  1. Formato de la clave
    • Debe comenzar con sk-
    • Sin espacios adicionales al pegar
  2. Variables de entorno
    # macOS / Linux
    echo $GEMINI_API_KEY
    echo $GEMINI_BASE_URL
    
    # Windows PowerShell
    echo $env:GEMINI_API_KEY
    echo $env:GEMINI_BASE_URL
    
  3. Estado de la clave

Q2: ¿Cómo verifico la configuración de la API?

import openai

openai.api_key = "sk-xxxxxxxxxxxx"
openai.api_base = "https://api.apimart.ai/v1"

try:
    response = openai.ChatCompletion.create(
        model="gemini-2.0-flash-exp",
        messages=[{"role": "user", "content": "test"}],
        max_tokens=10
    )
    print("✅ API configuration OK")
    print(f"Reply: {response.choices[0].message.content}")
except Exception as e:
    print(f"❌ API configuration failed: {e}")

Q3: ¿Qué lenguajes son compatibles?

Cualquier lenguaje que pueda enviar solicitudes HTTP funciona con APIMart:
  • Python: se recomienda el SDK de OpenAI
  • JavaScript / TypeScript: Node o navegador
  • Java: cliente HTTP
  • Go: biblioteca estándar o bibliotecas
  • PHP: cURL o Guzzle
  • Ruby: gemas HTTP
  • C# / .NET: HttpClient
  • Swift: URLSession
  • Otros: cualquier cosa con HTTP

Q4: ¿Dónde puedo ver el uso y la facturación?

En la Consola de APIMart:
  • 📊 Estadísticas de llamadas en vivo
  • 💰 Costos y facturas
  • 📈 Tendencias de uso
  • 🔍 Registros de solicitudes
  • ⚙️ Gestión de claves de API

Q5: Errores comunes de API

ErrorCausa probableQué hacer
401 UnauthorizedClave incorrecta o revocadaCorrija la clave en env / consola
429 Too Many RequestsLímite de tasaReduzca la velocidad o actualice el plan
500 Internal Server ErrorProblema temporal del servidorVuelva a intentarlo más tarde; contacte con soporte si persiste
insufficient_quotaSaldo bajoRecargue en la consola

Mejores prácticas

1. Reintentos y retroceso

import openai
import time

def call_with_retry(max_retries=3):
    for i in range(max_retries):
        try:
            response = openai.ChatCompletion.create(
                model="gemini-2.0-flash-exp",
                messages=[{"role": "user", "content": "Your question"}]
            )
            return response
        except openai.error.RateLimitError:
            if i < max_retries - 1:
                time.sleep(2 ** i)
                continue
            raise
        except Exception as e:
            print(f"Error: {e}")
            raise

response = call_with_retry()

2. Control de costos

def choose_model(complexity):
    if complexity == "simple":
        return "gpt-4o-mini"
    elif complexity == "medium":
        return "gemini-2.0-flash-exp"
    return "gpt-5"

model = choose_model("simple")
response = openai.ChatCompletion.create(
    model=model,
    messages=[{"role": "user", "content": "Your question"}],
    max_tokens=500
)

3. Prompts del sistema

response = openai.ChatCompletion.create(
    model="gemini-2.0-flash-exp",
    messages=[
        {
            "role": "system",
            "content": "You are an expert Python assistant who writes clear, efficient code."
        },
        {
            "role": "user",
            "content": "Implement quicksort for me"
        }
    ]
)

Características

Con Google AI Studio y APIMart obtiene:
  • 🤖 Muchos modelos: GPT, Claude, Gemini y más
  • 🌍 Compatible con OpenAI: forma familiar de solicitud / respuesta
  • Rendimiento: baja latencia, alta concurrencia
  • 💰 Precios claros: pague por uso
  • 📊 Observabilidad: supervise las llamadas en tiempo real
  • 🔒 Seguridad: salvaguardas orientadas a empresas
  • 🚀 Integración rápida: llamadas HTTP / SDK simples
  • 📚 Documentación: guías y ejemplos

Soporte


Comience con APIMart

Cree una cuenta, obtenga una clave de API y use múltiples modelos de IA desde los flujos de trabajo de Google AI Studio y más.