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