Discourse AI ora utilizza l’output strutturato per i contenuti, ma l’output strutturato non è stato supportato da molti provider API, quasi tutti i provider AI nel mio paese come DeepSeek o Qwen non lo fanno. L’uso dell’output strutturato porta a scelte API molto limitate che vanno solo a pochi principali provider AI.
Penso che, se Discourse AI deve superare l’attuale limitazione nella scelta dei provider, rinunciare all’output strutturato sia essenziale e nulla si romperà effettivamente senza di esso. Come soluzione, possiamo utilizzare alcuni semplici separatori univoci o semplicemente chiedere all’AI di generare JSON fornendo uno schema JSON o esempi, ma non utilizzando l’output strutturato, perché non farlo?
Puoi provare Moonshot AI Kimi K2 tramite i loro endpoint API per la Cina?
Sembra che l’URL di base dell’API sia https://api.moonshot.cn/v1.
Abbiamo introdotto il requisito degli output strutturati perché avevo sopportato migliaia di lamentele su problemi come, i modelli che aggiungevano “Ecco il tuo riassunto” o fallimenti nell’analisi quando si otteneva un elenco di titoli suggeriti per l’aiuto AI, ecc. Ora, con la traduzione, è diventato un problema ancora peggiore quando devi essere in grado di fidarti di milioni di invocazioni LLM per non aggiungere nulla di extra al tuo output.
Data la necessità di affidabilità e la disponibilità generale di output strutturati, abbiamo preso questa decisione sui provider in cui è supportato, ma sarei aperto a una PR che aggiunge una casella di controllo per disabilitare gli Output Strutturati dalla richiesta API sul provider OpenAI.
Quindi, non preoccupandosi di nulla al di fuori di <START> e <END>, credo che anche il modello AI di produzione più sciocco possa elaborare correttamente le etichette.
E chiedendo all’AI di non aggiungere descrizioni extra; quindi avvisando gli amministratori di possibili problemi se aprono quella casella di controllo. Grazie.
Non so come sia il corpo della richiesta generato da Discourse AI. Ma in caso contrario, basta inserire i prompt di sistema nel primo messaggio detto dal ruolo system, il risultato della query del database vettoriale nel messaggio successivo del ruolo system, e inserire il contenuto del post o altri dati effettivi nei messaggi del ruolo user.