React Guide

Hooks, Provider, streaming, and batch examples.

Install

npm install @xaikorea0/js-client react

useTaxia Hook (recommended)

import { useTaxia } from '@xaikorea0/js-client/react';
import { useEffect } from 'react';

export function App() {
  const { query, loading, error, data } = useTaxia({
    apiKey: process.env.REACT_APP_TAXIA_API_KEY || '',
    cacheEnabled: true,
  });

  useEffect(() => {
    query('법인세율은 얼마인가요?');
  }, []);

  if (loading) return 
Loading...
; if (error) return
Error: {error.message}
; return
Answer: {data?.answer}
; }

Provider + useTaxiaClient

import { TaxiaProvider, useTaxiaClient } from '@xaikorea0/js-client/react';

function QueryButton() {
  const { client } = useTaxiaClient();
  const [answer, setAnswer] = useState('');

  const ask = async () => {
    const res = await client.query('부가가치세율은?');
    setAnswer(res.answer);
  };

  return ;
}

export function App() {
  return (
    
      
    
  );
}

Streaming

const { queryStream, loading } = useTaxia({ apiKey: 'YOUR_KEY' });
const [chunks, setChunks] = useState([]);

const handleStream = () => {
  setChunks([]);
  queryStream('법인세 신고 방법은?', (chunk) => setChunks((c) => [...c, chunk]));
};

Batch

const { client } = useTaxiaClient();
const results = await client.queryBatch(['법인세율?', '부가세율?']);

Example project

JS Quick Start · JS API · Docs Home