Este guia mostra como começar com os pacotes oficiais do Ragion em poucos minutos.
npm install @ragion/sdk
# ou
yarn add @ragion/sdk
# ou
pnpm add @ragion/sdk
Se você está usando React, instale também os hooks:
npm install @ragion/react-hooks @ragion/sdk react
# ou
yarn add @ragion/react-hooks @ragion/sdk react
# ou
pnpm add @ragion/react-hooks @ragion/sdk react
import { RagionSDK } from '@ragion/sdk'
const ragion = new RagionSDK({
apiKey: 'rg_...', // Obrigatório
timeout: 30000, // Opcional (padrão: 30000)
retryAttempts: 3, // Opcional (padrão: 3)
retryDelay: 1000, // Opcional (padrão: 1000)
})
import { RagionProvider } from '@ragion/react-hooks'
function App() {
return (
<RagionProvider config={{
apiKey: 'rg_...',
}}>
<YourApp />
</RagionProvider>
)
}
const abortController = new AbortController()
// Com streaming
const controller = ragion.chat.ask({
message: 'Olá, como você pode me ajudar?',
sessionId: 'session_123', // Opcional
signal: abortController.signal, // Opcional
onChunk: (chunk) => {
console.log('Chunk recebido:', chunk)
},
onComplete: () => {
console.log('Resposta completa!')
},
onError: (err) => {
console.error('Erro:', err)
},
})
// Sem streaming (aguarda resposta completa)
const response = await ragion.chat.askComplete({
message: 'Olá, como você pode me ajudar?',
sessionId: 'session_123', // Opcional
})
console.log('Resposta:', response)
// Cancelar requisição em andamento (streaming)
controller.abort()
// ou
abortController.abort()
import { useRagionChat } from '@ragion/react-hooks'
function ChatComponent() {
const { messages, sendMessage, isStreaming, error, clearMessages, abort } = useRagionChat()
return (
<div>
{messages.map(msg => (
<div key={msg.id}>{msg.content}</div>
))}
{error && <p>Erro: {error.message}</p>}
<button onClick={() => sendMessage('Olá!')} disabled={isStreaming}>Enviar</button>
<button onClick={abort} disabled={!isStreaming}>Cancelar</button>
<button onClick={clearMessages}>Limpar</button>
</div>
)
}
try {
const response = await ragion.chat.askComplete({
message: 'Explique RAG de forma simples',
})
console.log(response)
} catch (error) {
if (error instanceof Error) {
console.error('Falha ao consultar o Ragion:', error.message)
}
}
apiKey em frontend público sem proteção.Agora que você configurou o básico:
Se você encontrou algum problema:
Pronto! Você já pode integrar o Ragion no seu projeto.