Cosa fa
Esistono due flussi di lavoro per il co-conduttore: un assistente vocale continuo in cohost.html, e azioni manuali del dock che inviano le frasi approvate a cohost-overlay.html.
Controlli del dock
Quando l'overlay del palco è connesso, fai clic destro su un messaggio della chat nel dock e scegli Co-conduttore. Il dock può leggere il messaggio, chiedere una risposta all'IA o preparare una bozza di battuta bonaria.
Overlay del palco IA
L'overlay mostra l'avatar, il fumetto e, facoltativamente, riproduce la sintesi vocale del browser. Questa è la sorgente browser da inserire in OBS.
Bot di chat privato (Private Chat Bot)
Answer e Light Roast usano il provider LLM configurato tramite il collegamento Private Chat Bot. Read non richiede l'IA.
Co-conduttore multimodale
cohost.html si collega al flusso della chat in diretta di SSN quando viene aperto con lo stesso session. La modalità predefinita di solo contesto consente all'IA di ricordare i messaggi recenti degli spettatori e commentarli quando lo streamer lo chiede.
Configurazione del co-conduttore con clic destro nel dock
- Apri il dock Streaming Chat con la tua sessione:
dock.html?session=YOUR_SESSION_ID. - Aggiungi l'overlay del palco IA a OBS:
cohost-overlay.html?session=YOUR_SESSION_ID. Aggiungi&ttssolo per un flusso di lavoro con risposte testuali. - Per le risposte IA, configura un provider LLM nel popup. Per una prova rapida, scegli SSN Hosted Trial LLM, che usa
llm.socialstream.ninja. - Attiva Chat Bots and AI services > Chat Bot - Private Interface > Enable private chat bot option.
- Fai clic destro su un messaggio del dock e seleziona Co-conduttore. Il menu resta nascosto finché non viene rilevato l'overlay del palco. Le righe dei messaggi nel dock non consentono ancora di aprire questo menu contestuale da tastiera; chi usa la tastiera può utilizzare il campo di testo o i controlli vocali in
cohost.html.
cohost.html pagina di controllo: scegli videocamera e microfono, seleziona un provider IA, imposta le istruzioni di sistema e controlla il pannello di stato Live Chat.Suggerimento: Usa lo stesso session per il dock e l'overlay del co-conduttore. &tts si applica ai flussi di lavoro con overlay testuale. Quando l'audio nativo del controller è attivo, SSN blocca il TTS duplicato dell'overlay; &forcetts disattiva intenzionalmente questa protezione.
Opzione IA semplice
llm.socialstream.ninja è disponibile tramite SSN Hosted Trial LLM come opzione semplice e gratuita per le prove, finché la versione di prova è disponibile.
- Apri Chat Bots and AI services > Configure LLM Service Provider.
- Seleziona SSN Hosted Trial LLM (sperimentale).
- Lascia vuoti endpoint, token e modello per usare la configurazione di prova predefinita.
- Per un uso continuativo, usa un tuo token o un provider locale se il servizio di prova viene disattivato o limitato.
Supporto delle conversazioni vocali
- OpenAI Realtime: Trasmette il microfono selezionato in
cohost.htmldirettamente a OpenAI per un'unica conversazione vocale nativa. La conversazione vocale e il contesto della chat in diretta restano nella stessa sessione del co-conduttore. - SSN Desktop: Usa Whisper locale con il microfono selezionato in
cohost.html. Il primo utilizzo scarica circa 42 MB; le trascrizioni successive avvengono offline. - Link Chrome / estensione Chrome: L'estensione apre la pagina ospitata del co-conduttore in una scheda di Chrome. OpenAI Realtime usa WebRTC con un segreto client di breve durata; i provider di risposte testuali usano il riconoscimento vocale di Chrome e possono richiedere Internet.
- Altri browser: Il riconoscimento vocale non è garantito. La chat testuale con il co-conduttore, l'input della chat in diretta, l'input da videocamera o schermo e le risposte dell'LLM configurato possono funzionare anche senza riconoscimento vocale.
Con OpenAI Realtime, Diagnostics dovrebbe mostrare In ascolto (OpenAI WebRTC). Con Desktop Whisper dovrebbe apparire In ascolto (Desktop Whisper) e poi il testo riconosciuto sotto Testo riconosciuto (Heard).
Privacy: il microfono selezionato, gli eventuali fotogrammi della videocamera o dello schermo selezionati esplicitamente e i messaggi degli spettatori condivisi dalla modalità Live Chat scelta vengono inviati a quel provider IA. I messaggi degli spettatori sono trattati come contesto non attendibile e non possono autorizzare gli strumenti del co-conduttore. Apri il link generato del controller dal popup e mantienilo privato; la sua autorizzazione privata scade dopo 12 ore, è limitata alla sessione SSN attuale e viene rimossa dalla barra degli indirizzi dopo il caricamento della pagina.
Configurazione di OpenAI Realtime
- Nel popup SSN, scegli API ChatGPT, aggiungi la chiave API del tuo progetto OpenAI e usa Prova il bot di chat selezionato.
- Apri il link generato
cohost.html?session=YOUR_SESSION_IDdal popup. La sua autorizzazione privata e temporanea per il co-conduttore consente Realtime senza attivare l'opzione separata Private Chat Bot. - Seleziona OpenAI Realtime. La chiave standard resta nel processo in background dell'estensione o dell'app desktop SSN; la pagina del co-conduttore riceve solo un segreto client Realtime di breve durata.
- Scegli esplicitamente il microfono in cui parli, mantieni Risposta audio (Audio Response) selezionato e premi Avvia co-conduttore (Start Co-host).
- Facoltativo: lascia Video source su Nessun video (No Video) (impostazione predefinita), oppure scegli esplicitamente Condivisione schermo (Screen Share) o una videocamera. OpenAI riceve un'immagine attuale con ogni richiesta diretta vocale o testuale, anziché un video continuo; questo può aumentare costo delle API e latenza.
- Lascia Live Chat su Solo contesto: rispondi quando richiesto (Context only - answer when asked). Chiedi «Cosa dice la chat?» per fare commentare i recenti messaggi degli spettatori alla stessa IA vocale.
- Acquisisci in OBS l'audio del browser o dell'app del co-conduttore. La voce nativa di OpenAI viene riprodotta solo da
cohost.html;cohost-overlay.htmlriceve l'avatar e il testo, non quello stesso flusso audio. Quando supportato, scegli un cavo virtuale sotto Uscita del co-conduttore per un instradamento audio separato in OBS. - Lascia visibile il fumetto dell'overlay del palco, oppure fornisci sottotitoli, affinché la risposta dell'IA non sia disponibile solo tramite audio.
Questo usa la fatturazione delle API OpenAI e crea un'unica conversazione SSN Realtime tramite WebRTC, separata da chatgpt.com. Le risposte sono limitate a 512 token di output; Diagnostics mostra l'uso cumulativo dei token e la latenza misurata fino al primo output. OpenAI tronca automaticamente l'audio non ancora riprodotto quando lo streamer interrompe. SSN conserva al massimo 20 messaggi recenti della chat per un massimo di 90 secondi, incluso il contesto relativo a supporto a pagamento, abbonamenti, moderatori, eventi e canale sorgente, poi elimina questo contesto temporaneo. SSN controlla le sessioni silenziose, riconnette i trasporti interrotti e rinnova le sessioni prima del limite di 60 minuti. Una sessione recuperata riapplica le istruzioni di sistema e le impostazioni delle prestazioni, ma riparte senza la conversazione vocale precedente.
Velocità, qualità e costo di OpenAI
- Modello: Mini è normalmente più veloce e costa meno. Full quality offre maggiori capacità e costa di più.
- Intensità del ragionamento: Minimal o Low riducono normalmente il ritardo delle risposte e il consumo di output fatturato. High o Extra high possono migliorare le risposte complesse, ma essere più lenti e costosi. Le modifiche si applicano anche durante la connessione.
- Velocità di alternanza dei turni: Fast attende fino a circa 2 secondi la fine di un pensiero; Balanced circa 4 secondi; Patient circa 8 secondi. Fast sembra più reattivo, ma può interrompere una pausa naturale.
- Diagnostica (Diagnostics): Latency indica il tempo dalla fine del turno al primo testo o audio e distingue, quando possibile, il ritardo del modello. Le condizioni di rete e il carico del provider possono comunque variare tra richieste altrimenti simili.
Controlli facoltativi della diretta
OpenAI Realtime supporta gli strumenti Spotify, scene OBS e messaggi in evidenza descritti sotto. SSN Configured LLM supporta attualmente solo Spotify; gli altri provider del co-conduttore non espongono ancora questi strumenti.
- Nel popup SSN, attiva solo gli strumenti del co-conduttore che desideri: Spotify, scene OBS o messaggi in evidenza.
- Per OBS, inserisci i nomi esatti delle scene consentite, separati da virgole, e mantieni
actions.htmlcollegato a OBS, oppure usa una sorgente browser di OBS con Full Permissions. - Su
cohost.html, apri Controlli della diretta del co-conduttore e abilita gli stessi strumenti per quel controller. - Chiedi direttamente, per esempio «passa a BRB», «metti in evidenza l'ultimo messaggio» o «rimuovi il messaggio in evidenza». I messaggi degli spettatori non possono autorizzare strumenti, e ogni richiesta diretta dello streamer può eseguire un solo strumento che modifica la diretta.
L'accesso agli strumenti è limitato a un elenco consentito, non è un accesso generale alle API. OBS può selezionare solo le scene nominate nelle impostazioni di SSN. Le richieste di messa in evidenza usano un messaggio di chat acquisito di recente e richiedono il dock Streaming Chat; le risposte degli strumenti indicano la consegna, non confermano che OBS o l'overlay abbiano completato l'azione.
Come comunicano le pagine
Il dock e l'overlay usano il collegamento di sessione già disponibile in Social Stream. I messaggi vengono inviati come overlayNinja payload, indirizzati tramite etichetta.
Leggi sul co-conduttore (Read on Co-host): il dock invia il messaggio di chat selezionato direttamente a cohost-overlay.html.
Risposta / Battuta bonaria (Answer / Light Roast): il dock invia una richiesta privata al chatbot del servizio in background di SSN, mostra la bozza IA nel dock e la invia all'overlay solo quando lo streamer fa clic su Speak.
{
"action": "cohostOverlay",
"target": "cohost-overlay",
"meta": {
"command": "say",
"text": "The line the avatar should say",
"speak": true,
"emotion": "happy"
}
}
Azioni disponibili
| Azione | Richiede | Risultato |
|---|---|---|
| Leggi sul co-conduttore (Read on Co-host) | Connesso cohost-overlay.html |
Legge il messaggio di chat selezionato nell'overlay. |
| Rispondi (Answer) | Private Chat Bot + LLM configurato o Hosted Trial LLM | Crea una breve bozza di risposta da sottoporre all'approvazione dello streamer. |
| Battuta bonaria (Light Roast) | Private Chat Bot + LLM configurato o Hosted Trial LLM | Crea una breve bozza scherzosa e adatta a tutti, da sottoporre all'approvazione dello streamer. |
| Pronuncia (Speak) | Bozza nel pannello di approvazione | Invia il testo approvato all'overlay del palco IA. |
| Copia | Bozza nel pannello di approvazione | Copia la bozza senza inviarla all'overlay. |
Stato e risoluzione dei problemi
- Se manca il menu Co-host, l'overlay del co-conduttore non viene rilevato nella stessa sessione.
- Se Answer o Light Roast è disattivato, il collegamento SSN o Private Chat Bot non è disponibile.
- L'interruttore dell'overlay del bot di chat principale è facoltativo e non attiva le azioni del co-conduttore tramite clic destro nel dock.
- Se
cohost.htmlnon vede la chat, verifica che l'URL abbia lo stessosessiondel popup e che Live Chat sia impostato su Context, Questions o All. - Solo contesto (Context only) attualmente condivide la chat con l'IA solo per OpenAI Realtime. Gli altri provider monitorano il flusso senza inserirlo nel modello.
- Silenzia il microfono interrompe l'audio inviato al co-conduttore. Silenzia la voce del co-conduttore, il cursore del volume, il selettore del dispositivo di uscita e Interrompi la voce controllano la riproduzione. Silenzia l'audio di sistema condiviso è separato e appare per i provider che supportano lo schermo.
- Se uno strumento di controllo della diretta non è disponibile, attivalo sia nel popup SSN sia in Controlli della diretta del co-conduttore. Anche OBS richiede almeno un nome di scena esatto nell'elenco delle scene consentite.
- Usa Prova l'overlay per inviare una riga di prova visibile e innocua, poi verifica che appaia nell'overlay del palco IA in OBS.
- Se il co-conduttore conosce la chat ma resta in silenzio, è il comportamento previsto in Solo contesto (Context only): chiedigli cosa dice la chat. Questions o All pronunciano risposte automatiche dalla pagina del co-conduttore; non pubblicano queste risposte nelle chat di YouTube, Twitch o Kick.
- Se l'app desktop mostra In ascolto (Desktop Whisper) ma non compila mai Testo riconosciuto (Heard), verifica che il microfono selezionato non sia silenziato e attendi il completamento del primo download del modello.
- Se Chrome non compila mai Testo riconosciuto (Heard), consenti l'accesso al microfono, controlla il microfono predefinito del sistema operativo, verifica la connessione a Internet e la disponibilità del riconoscimento vocale di Chrome.
- Se appare il testo di OpenAI Realtime ma non viene riprodotto l'audio, verifica Risposta audio (Audio Response), le autorizzazioni audio del browser e l'acquisizione audio del browser o dell'app in OBS. Usa
&ttssolo per il flusso separato con overlay testuale. - Se le risposte di OpenAI Realtime sono lente, prova Mini, ragionamento Low e alternanza dei turni Fast, poi confronta la riga Latency in Diagnostics. Un livello di ragionamento maggiore e l'alternanza Patient privilegiano intenzionalmente risposte più approfondite o pause più lunghe a scapito della velocità.
- Se OpenAI Realtime si disconnette, lascia il co-conduttore in esecuzione mentre tenta di riconnettersi. Diagnostics identifica il problema relativo a dati, peer, provider o controllo di integrità. Una sessione recuperata mantiene le istruzioni di sistema e le impostazioni delle prestazioni selezionate, ma non può recuperare la conversazione vocale precedente.
- Se una richiesta Answer, Light Roast o SSN Configured LLM scade, controlla che Social Stream sia attivo, la sessione corrisponda, Private Chat Bot sia abilitato e il provider LLM selezionato sia raggiungibile. OpenAI Realtime non richiede Private Chat Bot.
- Se Local Gemma non riesce a scaricare i file del modello dall'host predefinito, imposta come host delle risorse la tua cartella mirror di Gemma.
- Se l'IA di prova ospitata smette di rispondere, potrebbe essere disattivata o soggetta a limiti; passa al tuo token, a Ollama o a Custom API.
- Se sono aperti più overlay, verifica che l'etichetta dell'overlay corrisponda alla destinazione del dock. L'etichetta predefinita è
cohost-overlay.
Parametri URL utili
session=YOUR_SESSION_ID- necessario affinché dock e overlay condividano la stessa stanza.ttsoppurespeak=1- permette all'overlay di parlare con il TTS del browser.forcetts- consente il TTS dell'overlay anche quando il controller del co-conduttore sta già riproducendo audio; questo crea intenzionalmente una seconda voce.label=cohost-overlay- imposta l'etichetta di destinazione dell'overlay.name=NinjaBot- imposta il nome visualizzato nell'overlay.avatar=https://...- usa un'immagine avatar personalizzata.position=bottom-right- controlla la posizione sul palco.scale=1.2- ridimensiona l'overlay.status- mostra il testo di connessione e stato nell'overlay.
Note di progettazione
- Per i flussi di lavoro con dock o testo manuale, l'overlay è la sorgente visiva e, facoltativamente, di riproduzione TTS. Per la voce nativa OpenAI, acquisisci
cohost.htmlseparatamente; l'overlay del palco non riproduce nuovamente lo stesso audio WebRTC. - Il dock funge da pannello di controllo, così l'approvazione dello streamer resta fuori dalla diretta.
- Le risposte generate non vengono pronunciate automaticamente: lo streamer deve prima approvarle.
- I dettagli dei comandi non standard si trovano in
meta, mantenendo prevedibili i payload per overlay e automazioni.