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