GraphN routes each agent to a language model you choose in the agent editor. Built-in models are ready to use; you can also import an OpenAI-compatible endpoint (for example vLLM, Ollama with the OpenAI API, or a third-party API) and select it like any other model.
Built-in models
When you open the Models page (under Resources in the sidebar), you see a card grid of every model available in your workspace, including the OCR, embedding, and reranker models. When configuring an Agent node on the workflow canvas, you pick a model from a dropdown in the node panel, which lists only chat and vision models.
Chat and multimodal models
The following models are callable through the model API. All of them except Gemma 4 E4B are in the agent model picker. Each links to its catalog page with the full editorial write-up, specifications, and runnable API examples.
Long-context assistants, retrieval and enterprise agents, with image input.
Note: The agent model selector offers chat and vision models. Gemma 4 E4B is an audio chat model, so it is not in the selector; use it from the Playground or the model API.
Model picker showing available chat and vision models as a card grid
OCR and retrieval models (not in the agent model picker)
The platform registers OCR, embedding, and reranker models for features such as document reading and retrieval. They are not offered as the main LLM in the agent model selector.
Relevance scoring across modalities: text against images and back.
Decision guide
Scroll horizontally to compare
Your goal
Recommended model
General agents, tools, structured JSON
Qwen3 80B Instruct
Long inputs or long-horizon agents (262K context)
Qwen3.8 27B
Code-heavy agents and IDE-style workflows
Qwen3.8 27B
Adjustable reasoning effort per request
gpt-oss 120B
Multimodal inputs (images, video + text)
Qwen3.5 9B Vision or Qwen3.8 27B
Reading scanned documents into markdown
DeepSeek OCR (through document conversion)
Voice input without a separate transcription step
Gemma 4 E4B (Playground or model API)
Fine-tuned or external API you control
Import an endpoint (next section) and pick that model
Custom model import
Import an OpenAI-compatible HTTP API whose chat path is /v1/chat/completions (same request shape as OpenAI). Typical sources include vLLM, Ollama (OpenAI compatibility mode), OpenAI, Google Gemini via OpenAI compatibility, and OpenRouter.
Tip: Want to import directly from HuggingFace or your own S3 bucket from a script instead of the wizard below? See the Python SDK tutorial for an end-to-end walk-through.
Import from the UI
In the sidebar, under Resources, click Models.
Click Import Model (top-right corner).
The import wizard has two tabs:
API Endpoint (connect to a running inference server):
Choose a provider:
OpenAI, Google (Gemini), or OpenRouter — preset base URLs; you attach a secret that stores your API key, then use Fetch Available Models to list models from /v1/models (filtered to chat-relevant entries).
Custom Provider — for any other OpenAI-compatible base URL (for example http://your-host:8000/v1 for a local vLLM server). Enter the endpoint URL, model id (exactly as the server expects in API calls), and optionally an API key secret if the server requires authentication.
(Optional) Click Configure to set type (chat, vision, or embedding), capabilities (for example tool calling, vision, streaming, json mode), context length, and description.
Click Import. You are taken to the new model’s detail page.
Tip: For self-hosted vLLM or Ollama, the base URL usually ends with /v1. The model id must match what you pass when calling that server (for example the served model name).
HuggingFace Weights (deploy a model from HuggingFace):
Enter the full HuggingFace model ID (for example meta-llama/Llama-3-8B-Instruct).
Optionally set a display name (auto-generated from the model ID if left blank).
If the model is gated or private, click Attach secret to provide your HuggingFace token.
Click Validate & Continue to proceed through the optimization and scaling steps.
Import Model wizard showing API Endpoint and HuggingFace Weights tabs
Test the connection before using an agent
After import, open the imported model’s page. In the Test Model section, enter a short prompt and run the test. The app streams a reply so you can confirm the endpoint, credentials, and model id work together.
Warning: If the test fails, fix the endpoint URL, secret, or model id before selecting this model on an agent—otherwise runs will fail at inference time.
Verify connectivity with the API (optional)
You can send a single chat completion through GraphN to validate an endpoint before or after saving an imported model, using the same workspace and auth as the app.
Replace the placeholders with your workspace id, bearer token, base URL (must include /v1), and upstream model id:
bash
curl-X POST "https://cp.graphn.ai/v1/${WORKSPACE_ID}/imported-models/test-connection"\-H"Content-Type: application/json"\-H"Authorization: Bearer ${TOKEN}"\-d'{
"endpoint": "https://your-endpoint.example.com/v1",
"model_id": "your-model-name",
"api_key_secret_id": null,
"message": "Reply with one short sentence."
}'
Omit api_key_secret_id or set it to null when the server does not use a bearer token. When you store a key in Secrets, pass that secret’s id so the test can authenticate.
A successful response includes a response field with the generated text, the model name returned by the server, and usage token counts when the upstream returns them.
Register an imported model with the API
To create the imported model record programmatically (equivalent to finishing the import wizard):
Use a unique name (URL-friendly identifier) within the workspace; agents reference this value as the model setting. display_name is what people see in lists and selectors.
List models from a provider endpoint (API)
To mirror Fetch Available Models in the UI (OpenAI-style GET /v1/models on the same base URL as chat):