Vai al contenuto principale

FreeAI::Server::OpenAI — server OpenAI API basato su scraper integrati di modelli AI.

OpenAI Server

Panoramica dello scraper​

Lo scraper offre la possibilità di distribuire il proprio server API compatibile con OpenAI, al quale è possibile connettersi dalle proprie applicazioni (ad esempio, Cherry Studio, Cline, ecc.) e script — sia tramite l'SDK ufficiale di OpenAI, sia utilizzando normali richieste HTTP. Lo scraper fornisce l'accesso a modelli gratuiti e a pagamento che A-Parser sottopone a scraping.

Elenco dei modelli supportati:

Connessione a Cherry Studio​

  • Impostazioni (angolo in alto a destra)
  • Elenco dei provider, in fondo "aggiungi"
  • Impostare un nome arbitrario, il tipo di Provider deve essere OpenAI
  • Inserire una API Key (qualsiasi chiave)
  • Inserire l'host (configurato in FreeAI::Server::OpenAI) inizialmente http://127.0.0.1:3000
  • Pulsante "Manage" per aggiungere i modelli necessari
Visualizza il video della connessione

connessione a cherry studio

Connessione tramite OpenAI SDK​

Connessione a FreeAI::Server::OpenAI tramite nodejs + openai sdk
Codice dall'esempio
import OpenAI from "openai";

(async function () {
const openai = new OpenAI({
baseURL: "http://127.0.0.1:3000/v1", //Link su cui è attivo FreeAI::Server::OpenAI
apiKey: "123",
});

const completion = await openai.chat.completions.create({
model: "FreeAI::ChatGPT", //Il modello è il nome dello scraper dall'elenco FreeAI::Server::OpenAI, l'elenco dei modelli supportati è nella sezione "Panoramica dello scraper"
messages: [{ role: "user", content: "Why is the sky blue?" }], //Richiesta al modello
});

console.log(completion.choices[0].message.content); //Output della risposta dal modello AI
})();

Ricezione del risultato tramite richiesta HTTP​

Connessione a FreeAI::Server::OpenAI tramite richiesta http nodejs
Codice dall'esempio
const resp = await fetch("http://127.0.0.1:3000/v1/chat/completions", {
method: "POST",
headers: {
Authorization: "Bearer 123",
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "FreeAI::ChatGPT", //Il modello è il nome dello scraper dall'elenco FreeAI::Server::OpenAI, l'elenco dei modelli supportati è nella sezione "Panoramica dello scraper"
messages: [{ role: "user", content: "Ambiti di utilizzo di nodejs" }], //Richiesta al modello
}),
});

if (!resp.ok) {
const text = await resp.text();
throw new Error(`HTTP ${resp.status}: ${text}`);
}

const data = await resp.json();
console.log(data.choices?.[0]?.message?.content);

Impostazioni possibili​

Nome parametroValore predefinitoDescrizione
Listen Host127.0.0.1Indirizzo IP o hostname dell'interfaccia su cui il servizio accetta le connessioni in entrata
Listen Port3000Numero di porta su cui il servizio accetta le connessioni in entrata
FreeAI::ChatGPT presetdefaultPreset per lo scraper FreeAI::ChatGPT
FreeAI::Copilot presetdefaultPreset per lo scraper FreeAI::Copilot
FreeAI::DeepAI presetdefaultPreset per lo scraper FreeAI::DeepAI
FreeAI::GoogleAI presetdefaultPreset per lo scraper FreeAI::GoogleAI
FreeAI::Kimi presetdefaultPreset per lo scraper FreeAI::Kimi
FreeAI::Perplexity presetdefaultPreset per lo scraper FreeAI::Perplexity