Skip to content

Guide API Keys

GitHub Actions edited this page Jan 25, 2026 · 2 revisions

πŸ”‘ API-Keys Konfiguration

Diese Anleitung zeigt dir, wie du API-Keys fΓΌr LLM-Features und andere externe Services konfigurierst.


πŸš€ Schnellstart

1. Umgebungsvariablen setzen

Windows (PowerShell):

$env:OPENAI_API_KEY = "sk-..."
$env:ANTHROPIC_API_KEY = "sk-ant-..."
$env:GOOGLE_GEMINI_API_KEY = "AIza..."

Windows (CMD):

set OPENAI_API_KEY=sk-...
set ANTHROPIC_API_KEY=sk-ant-...
set GOOGLE_GEMINI_API_KEY=AIza...

Linux/Mac:

export OPENAI_API_KEY="sk-..."
export ANTHROPIC_API_KEY="sk-ant-..."
export GOOGLE_GEMINI_API_KEY="AIza..."

2. In Code verwenden

fn getApiKey(): string {
    // Nutze config.get_env() fΓΌr Umgebungsvariablen
    return config.get_env("OPENAI_API_KEY", "");
}

@POST("/api/chat")
fn chat(message: string): string {
    let llm = LLMClient.new("openai", getApiKey());
    let result = await llm.generate(message);
    return result;
}

πŸ“‹ VerfΓΌgbare API-Keys

LLM-Provider

OpenAI

Anthropic Claude

Google Gemini

Vector Databases

Pinecone

Weaviate

Qdrant


βš™οΈ Konfiguration ΓΌber velin.config.json

1. Config-Datei erstellen

velin config init

2. API-Keys in Config eintragen

{
  "ml": {
    "llm": {
      "provider": "openai",
      "apiKey": "${OPENAI_API_KEY}",
      "anthropicApiKey": "${ANTHROPIC_API_KEY}",
      "geminiApiKey": "${GOOGLE_GEMINI_API_KEY}",
      "model": "gpt-4"
    }
  }
}

Wichtig: Nutze ${VARIABLE_NAME} fΓΌr Umgebungsvariablen, nicht die Keys direkt!

3. In Code verwenden

use config;

fn getConfig(): AppConfig {
    return config.loadConfig("velin.config.json");
}

@POST("/api/chat")
fn chat(message: string): string {
    let cfg = getConfig();
    let llm = LLMClient.new(cfg.ml.llm.provider, cfg.ml.llm.apiKey);
    return await llm.generate(message);
}

πŸ”’ Sicherheit

βœ… Best Practices

  1. Nie API-Keys im Code hardcoden

    // ❌ SCHLECHT
    let apiKey = "sk-1234567890abcdef";
    
    // βœ… GUT
    let apiKey = config.get_env("OPENAI_API_KEY", "");
    
  2. Nutze Umgebungsvariablen

    • Lokal: .env Datei (nicht committen!)
    • Production: Environment Variables im Deployment
  3. Nutze velin.config.json mit Variablen

    {
      "ml": {
        "llm": {
          "apiKey": "${OPENAI_API_KEY}"
        }
      }
    }
  4. Gitignore beachten

    .env
    velin.config.json
    *.key
    

❌ Was du NICHT tun solltest

  • ❌ API-Keys in Git committen
  • ❌ API-Keys in Code hardcoden
  • ❌ API-Keys in Logs ausgeben
  • ❌ API-Keys in ΓΆffentlichen Repositories teilen

πŸ§ͺ Testing ohne API-Keys

FΓΌr Tests kannst du den "local" Provider verwenden:

@POST("/api/chat")
fn chat(message: string): string {
    // "local" simuliert Antworten ohne API-Kosten
    let llm = LLMClient.new("local", "");
    return await llm.generate(message);
}

πŸ“š Weitere Ressourcen


πŸ†˜ Probleme?

"API Key not found"

  1. PrΓΌfe, ob die Umgebungsvariable gesetzt ist:

    # Windows
    echo $env:OPENAI_API_KEY
    
    # Linux/Mac
    echo $OPENAI_API_KEY
  2. PrΓΌfe, ob die Variable im aktuellen Terminal verfΓΌgbar ist

  3. Starte den Terminal neu, wenn nΓΆtig

"Invalid API Key"

  1. PrΓΌfe, ob der Key korrekt kopiert wurde
  2. PrΓΌfe, ob der Key noch gΓΌltig ist
  3. Erstelle einen neuen Key, falls nΓΆtig

Letzte Aktualisierung: 2026-01-30
Version: 3.1.0


← ZurΓΌck zur Übersicht

Clone this wiki locally