Pular para o conteúdo

LangChain.js

Visao Geral

O Floopy e um gateway sem SDK. O pacote @langchain/openai ja suporta URLs base personalizadas, entao voce pode rotear todas as requisicoes do LangChain.js pelo Floopy sem dependencias extras. Voce ganha cache, rate limiting, fallbacks e observabilidade de graca.

Instalacao

Terminal window
npm install @langchain/openai

Configuracao

import { ChatOpenAI } from "@langchain/openai";
const model = new ChatOpenAI({
configuration: {
baseURL: "https://api.floopy.ai/v1",
apiKey: process.env.FLOOPY_API_KEY, // starts with fp_
},
modelName: "gpt-4o",
});

Defina FLOOPY_API_KEY no seu ambiente. Voce pode criar uma no dashboard.

Requisicao Basica

const response = await model.invoke("Explain quantum computing in one sentence.");
console.log(response.content);

Troque de provedor alterando o nome do modelo:

const anthropicModel = new ChatOpenAI({
configuration: {
baseURL: "https://api.floopy.ai/v1",
apiKey: process.env.FLOOPY_API_KEY,
},
modelName: "claude-sonnet-4-20250514",
});
const response = await anthropicModel.invoke("Hello!");

Streaming

const stream = await model.stream("Write a short poem about AI.");
for await (const chunk of stream) {
process.stdout.write(chunk.content as string);
}

Headers Personalizados

Passe headers especificos do Floopy usando configuration.defaultHeaders:

const model = new ChatOpenAI({
configuration: {
baseURL: "https://api.floopy.ai/v1",
apiKey: process.env.FLOOPY_API_KEY,
defaultHeaders: {
"Floopy-Cache": "semantic",
"floopy-property-environment": "production",
"floopy-property-feature": "chat",
"floopy-fallback": "claude-sonnet-4-20250514",
},
},
modelName: "gpt-4o",
});
HeaderDescricao
Floopy-CacheEstrategia de cache: semantic ou exact
floopy-property-*Anexe metadados personalizados para filtragem no dashboard
floopy-fallbackModelo de fallback se o provedor principal falhar
floopy-session-idAgrupe requisicoes relacionadas em uma sessao
floopy-user-idAssocie requisicoes a um usuario final

Consulte a Referencia de Headers para a lista completa.