Modèle
OpenAI: gpt-oss-20b (free)
Snapshot du catalogue OpenRouter. Même si ce modèle n'est pas encore dans le classement global, sa fiche est accessible sur le site.
Données mises à jour :
Version des données : v20260430T083453Z Taille des données : 100
Ce modèle provient du snapshot du catalogue et peut ne pas encore être inclus dans le classement le plus récent.
À propos de ce modèle
OpenAI: gpt-oss-20b (free) est listé dans le catalogue comme modèle LLM, avec 131,072 ctx et un prix moyen snapshot d'environ $0.00 par 1M de tokens. Les données ci-dessous viennent du dernier snapshot catalogue; quand un id OpenRouter est disponible, des exemples d'intégration sont aussi fournis.
Vous pouvez aussi explorer plus de modeles de OpenAI et voir plus d'options depuis 🇺🇸 United States .
Indicateurs clés
- Rang
- Non classé
- Type
- LLM
- Indicateur principal
- 131,072 ctx
- 1M tokens (moy.)
- $0.00
- Fournisseur / equipe
- OpenAI
- Origine
- 🇺🇸 United States
- Licence
- Proprietary
- Exigence VRAM
- API-managed
Action rapide du Hippo
URL chat completions OpenRouter ; définissez Authorization et le corps selon la doc.
Comparaison des prix (instantané)
| Source / agrégateur | Prix / 1M tokens | Latence |
|---|---|---|
| Moyenne instantané (tableau) | $0.00 | — |
Chiffres issus de l’instantané importé du classement ; les prix et latences en direct peuvent varier.
Prix des tokens par fournisseur
Comparez les prix de tokens de ce modèle entre fournisseurs disponibles.
| Fournisseur | Entrée / 1M tokens | Sortie / 1M tokens | Statut | Prix mis à jour |
|---|---|---|---|---|
| OpenRouter | $0.00 | $0.00 | Vérifié | 2026-04-30T08:36:20.577Z |
| OpenAI | $2.50 | $15.00 | Snapshot | 2026-04-29T23:08:13.076Z |
| Azure OpenAI | $0.00 | $0.00 | Snapshot | 2026-04-29T22:08:32.969Z |
| Groq | $2.50 | $15.00 | Snapshot | 2026-04-29T05:13:01.371Z |
| Fireworks | $2.50 | $15.00 | Snapshot | 2026-04-29T05:13:01.371Z |
| Together | $2.50 | $15.00 | Snapshot | 2026-04-29T05:13:01.371Z |
Les prix proviennent du dataset de comparaison des tokens et peuvent changer entre snapshots.
Intégration
OpenRouter expose un point de terminaison Chat Completions compatible OpenAI. Utilisez les onglets pour changer de langage d’exemple. Remplacez l’identifiant du modèle par celui de votre fournisseur si vous routez ailleurs.
// Node.js 18+ — set OPENROUTER_API_KEY in your environment
const res = await fetch('https://openrouter.ai/api/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.OPENROUTER_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: "openai/gpt-oss-20b:free",
messages: [{ role: 'user', content: 'Hello' }],
}),
});
const data = await res.json();
console.log(data);# pip install requests
import json
import os
import requests
payload = {
"model": "openai/gpt-oss-20b:free",
"messages": [{"role": "user", "content": "Hello"}],
}
resp = requests.post(
"https://openrouter.ai/api/v1/chat/completions",
headers={
"Authorization": f"Bearer {os.environ['OPENROUTER_API_KEY']}",
"Content-Type": "application/json",
},
data=json.dumps(payload),
)
resp.raise_for_status()
print(resp.json())package main
import (
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
"os"
)
func main() {
key := os.Getenv("OPENROUTER_API_KEY")
payload := map[string]any{
"model": "openai/gpt-oss-20b:free",
"messages": []map[string]string{{"role": "user", "content": "Hello"}},
}
b, err := json.Marshal(payload)
if err != nil {
panic(err)
}
req, err := http.NewRequest(http.MethodPost, "https://openrouter.ai/api/v1/chat/completions", bytes.NewReader(b))
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer "+key)
req.Header.Set("Content-Type", "application/json")
res, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer res.Body.Close()
out, err := io.ReadAll(res.Body)
if err != nil {
panic(err)
}
fmt.Println(string(out))
}import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class OpenRouterChat {
public static void main(String[] args) throws Exception {
String key = System.getenv("OPENROUTER_API_KEY");
String body = "{\"model\":\"openai/gpt-oss-20b:free\",\"messages\":[{\"role\":\"user\",\"content\":\"Hello\"}]}";
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create("https://openrouter.ai/api/v1/chat/completions"))
.header("Authorization", "Bearer " + key)
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> res = HttpClient.newHttpClient().send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(res.body());
}
}import java.net.URI
import java.net.http.HttpClient
import java.net.http.HttpRequest
import java.net.http.HttpResponse
fun main() {
val key = System.getenv("OPENROUTER_API_KEY") ?: error("OPENROUTER_API_KEY")
val body = "{\"model\":\"openai/gpt-oss-20b:free\",\"messages\":[{\"role\":\"user\",\"content\":\"Hello\"}]}"
val req = HttpRequest.newBuilder()
.uri(URI.create("https://openrouter.ai/api/v1/chat/completions"))
.header("Authorization", "Bearer $key")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(body))
.build()
val res = HttpClient.newHttpClient().send(req, HttpResponse.BodyHandlers.ofString())
println(res.body())
}// Cargo.toml: serde_json = "1", ureq = "2"
use serde_json::json;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let key = std::env::var("OPENROUTER_API_KEY")?;
let model = "openai/gpt-oss-20b:free";
let body = json!({
"model": model,
"messages": [{"role": "user", "content": "Hello"}]
});
let resp = ureq::post("https://openrouter.ai/api/v1/chat/completions")
.set("Authorization", &format!("Bearer {}", key))
.set("Content-Type", "application/json")
.send_string(&body.to_string())?;
println!("{}", resp.into_string()?);
Ok(())
}import java.net.URI
import java.net.http.{HttpClient, HttpRequest, HttpResponse}
@main def run(): Unit =
val key = sys.env.getOrElse("OPENROUTER_API_KEY", throw new RuntimeException("OPENROUTER_API_KEY"))
val body = "{\"model\":\"openai/gpt-oss-20b:free\",\"messages\":[{\"role\":\"user\",\"content\":\"Hello\"}]}"
val req = HttpRequest.newBuilder()
.uri(URI.create("https://openrouter.ai/api/v1/chat/completions"))
.header("Authorization", s"Bearer $key")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(body))
.build()
val res = HttpClient.newHttpClient().send(req, HttpResponse.BodyHandlers.ofString())
println(res.body())
}# macOS/Linux — set OPENROUTER_API_KEY in your environment
curl -sS 'https://openrouter.ai/api/v1/chat/completions' \
-H "Authorization: Bearer $OPENROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"openai/gpt-oss-20b:free","messages":[{"role":"user","content":"Hello"}]}'Conservez les clés API dans des variables d’environnement ou un gestionnaire de secrets — ne les commitez jamais dans le dépôt.
Alternative picks
-
DeepSeek: DeepSeek V4 Flash
Compare now -
Writer: Palmyra X5
Compare now -
inclusionAI: Ling-2.6-1T (free)
Compare now
Choisissez un ou deux modèles de plus dans le classement global et utilisez Comparer pour les voir côte à côte.