--- title: IG Comment Gen emoji: 💬 colorFrom: indigo colorTo: pink sdk: docker app_port: 7860 pinned: false license: mit short_description: AI-generated Instagram comments (Italian, fitness niche) --- # IG Comment Gen Space che genera un singolo commento breve e naturale per un post Instagram, dato: - `caption` del post - `media_type` (`photo` / `video` / `reel` / `carousel` / `igtv`) - `target_username` (opzionale, per personalizzare) - `hint` (opzionale, contesto di tono/nicchia) - `language` (default: Italian) Chiamato da `instagram-bot-custom` (GramAddict) come sostituto della vecchia integrazione Gemini in `ai_comment.py`. ## Backend Usa **Groq API** direttamente (`api.groq.com/openai/v1`, OpenAI-compat) con cascata modelli: 1. `llama-3.3-70b-versatile` — primary, qualità top, ~300-500ms 2. `llama-3.1-8b-instant` — fallback: velocissimo, per rate-limit del 70B 3. `gemma2-9b-it` — fallback 2, alternativa se Llama è giù Free tier Groq: 14,400 richieste/giorno su Llama 3.3 70B, largamente sufficiente per un bot IG a 60-90 commenti/giorno. Se tutti falliscono, l'endpoint risponde `{ "comment": null }` e il bot ricade sul suo `comments_list.txt`. ## Secrets richiesti (HF Space Settings → Repository secrets) | Nome | Obbligatorio | Descrizione | |---|---|---| | `GROQ_API_KEY` | ✅ | Groq API key (free tier). Crea su https://console.groq.com/keys. | | `SPACE_API_KEY` | ❌ | Se settato, l'endpoint `/api/generate` richiede header `Authorization: Bearer `. Senza, l'endpoint è aperto (comodo per test iniziale). | ## API ### `POST /api/generate` ```json { "caption": "3 anni di allenamento continuo, ecco i risultati...", "media_type": "reel", "target_username": "il.pump.quotidiano", "hint": "coach fitness, tono cameratesco", "language": "Italian" } ``` Response: ```json { "comment": "3 anni di costanza si vedono tutti in questo confronto", "model_used": "openai/gpt-oss-120b:fastest", "latency_ms": 612, "attempts": 1 } ``` Errori (`400`/`401`/`503`): `{ "comment": null, "error": "..." }`. ## Uso locale (test) ```bash export HF_TOKEN=hf_xxx pip install -r requirements.txt python app.py # UI Gradio su http://localhost:7860, API su http://localhost:7860/api/generate ``` ## Regole del prompt 14 regole assertive che replicano lo stile che serve al bot (no emoji, no #, no !, no first-person, no complimenti generici). Vedi `app.py` → `_build_prompt`.