Ir al contenido principal

FreeAI::Server::OpenAI — servidor de OpenAI API basado en extractores integrados de modelos de IA.

OpenAI Server

Descripción general del extractor

El extractor ofrece la posibilidad de desplegar su propio servidor API compatible con OpenAI, al cual se puede conectar desde sus aplicaciones (por ejemplo, Cherry Studio, Cline, etc.) y scripts, tanto a través del SDK oficial de OpenAI como mediante solicitudes HTTP convencionales. El extractor proporciona acceso a modelos gratuitos y de pago que A-Parser extrae.

Lista de modelos compatibles:

Conexión a Cherry Studio

  • Configuración (esquina superior derecha)
  • Lista de proveedores, al final de todo "añadir"
  • Asignamos un nombre arbitrario, el Provider type debe ser OpenAI
  • Introducimos la API Key (cualquier clave)
  • Introducimos el host (se configura en FreeAI::Server::OpenAI) inicialmente http://127.0.0.1:3000
  • Botón "Manage" para añadir los modelos necesarios
Ver video de conexión

conexión a cherry studio

Conexión a través del SDK de OpenAI

Conexión a FreeAI::Server::OpenAI vía nodejs + openai sdk
Código del ejemplo
import OpenAI from "openai";

(async function () {
const openai = new OpenAI({
baseURL: "http://127.0.0.1:3000/v1", //Enlace en el que se levanta FreeAI::Server::OpenAI
apiKey: "123",
});

const completion = await openai.chat.completions.create({
model: "FreeAI::ChatGPT", //El modelo es el nombre del extractor de la lista FreeAI::Server::OpenAI, consulte la lista de modelos compatibles en la sección "Descripción general del extractor"
messages: [{ role: "user", content: "Why is the sky blue?" }], //Consulta al modelo
});

console.log(completion.choices[0].message.content); //Salida de la respuesta del modelo de IA
})();

Obtención del resultado mediante solicitud HTTP

Conexión a FreeAI::Server::OpenAI vía solicitud http de nodejs
Código del ejemplo
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", //El modelo es el nombre del extractor de la lista FreeAI::Server::OpenAI, consulte la lista de modelos compatibles en la sección "Descripción general del extractor"
messages: [{ role: "user", content: "Áreas de uso de nodejs" }], //Consulta al modelo
}),
});

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);

Configuraciones posibles

Nombre del parámetroValor por defectoDescripción
Listen Host127.0.0.1Dirección IP o hostname de la interfaz en la que el servicio acepta conexiones entrantes
Listen Port3000Número de puerto en el que el servicio acepta conexiones entrantes
FreeAI::ChatGPT presetdefaultAjuste preestablecido para el extractor FreeAI::ChatGPT
FreeAI::Copilot presetdefaultAjuste preestablecido para el extractor FreeAI::Copilot
FreeAI::DeepAI presetdefaultAjuste preestablecido para el extractor FreeAI::DeepAI
FreeAI::GoogleAI presetdefaultAjuste preestablecido para el extractor FreeAI::GoogleAI
FreeAI::Kimi presetdefaultAjuste preestablecido para el extractor FreeAI::Kimi
FreeAI::Perplexity presetdefaultAjuste preestablecido para el extractor FreeAI::Perplexity