cheapaimodel

LangChain

Usa los modelos de cheapaimodel en LangChain a través de la API compatible con OpenAI.

Copiar

LangChain se conecta a servicios compatibles con OpenAI mediante su integración de OpenAI: ChatOpenAI, de langchain-openai en Python y de @langchain/openai en TypeScript. Apúntalo a nuestra Base URL y pasa tu clave de API de cheapaimodel.

Parámetro de LangChainValor
Base URLbase_urlhttps://api.cheapaimodel.ai/v1
Clave de APIapi_keyLa clave que creaste en la página Claves de API de la consola
ID del modelomodeldeepseek-v4-1-flash o cualquier ID del catálogo

Configuración

La tabla usa los nombres de Python. En TypeScript son configuration.baseURL, apiKey y model: la Base URL va dentro de configuration.

La versión actual de langchain-openai requiere Python 3.10 o posterior.

Terminal
pip install -U langchain-openai
main.py
import os
from langchain_openai import ChatOpenAI

llm = ChatOpenAI(
    model="deepseek-v4-1-flash",
    base_url="https://api.cheapaimodel.ai/v1",
    api_key=os.environ["CHEAPAIMODEL_API_KEY"],
)

response = llm.invoke("Explain recursion in one sentence.")
print(response.text)

# Streaming
for chunk in llm.stream("Write a haiku about the sea."):
    print(chunk.text, end="", flush=True)

ChatOpenAI envía las solicitudes a /v1/chat/completions. Cualquier modelo del catálogo que incluya ese endpoint funciona en lugar de deepseek-v4-1-flash.

Con init_chat_model

En Python, init_chat_model del paquete langchain acepta los mismos parámetros. Pasa model_provider="openai": sin él, LangChain adivina el proveedor a partir del ID del modelo y elige la integración equivocada, o ninguna.

main.py
import os
from langchain.chat_models import init_chat_model

llm = init_chat_model(
    "deepseek-v4-1-flash",
    model_provider="openai",
    base_url="https://api.cheapaimodel.ai/v1",
    api_key=os.environ["CHEAPAIMODEL_API_KEY"],
)

Embeddings

cheapaimodel todavía no tiene modelos de embeddings. Deja OpenAIEmbeddings, o la clase de embeddings que use tu retriever, con su propio proveedor, y no la apuntes a nuestra Base URL.

Errores comunes

  • 'baseURL' does not exist in type 'ChatOpenAIFields' (TypeScript). baseURL va dentro de configuration. En JavaScript puro, el campo de nivel superior se ignora sin mostrar ningún error, y la solicitud se va a OpenAI con tu clave de cheapaimodel.
  • init_chat_model devuelve requires the langchain-deepseek package o Unable to infer model provider. Agrega model_provider="openai".
  • 503 con model_not_found en /v1/embeddings. Exportaste OPENAI_BASE_URL u OPENAI_API_BASE con nuestra Base URL. ChatOpenAI la lee, pero OpenAIEmbeddings también, y entonces nos pide un modelo de embeddings. Pasa base_url en el código en lugar de exportarla.
  • Se imprime <bound method BaseMessage.text ...>. Tu versión de Python es anterior a la 3.10, así que pip instaló la línea 0.3, donde text es un método. Actualiza Python y vuelve a instalar.
  • 503 con model_not_found en /v1/chat/completions. Falta model, así que LangChain envía su valor predeterminado de OpenAI, gpt-3.5-turbo, o el ID no está en el catálogo. Define model con un ID del catálogo.

Para errores de Base URL, como olvidar /v1, consulta Base URL.