Installation
Copy
npm install praisonai
Basic Usage
Copy
import { QueryRewriterAgent } from 'praisonai';
const agent = new QueryRewriterAgent();
const result = await agent.rewrite('how to code');
console.log('Original:', result.original);
console.log('Rewritten:', result.rewritten);
console.log('Strategy:', result.strategy);
With Configuration
Copy
import { QueryRewriterAgent } from 'praisonai';
const agent = new QueryRewriterAgent({
name: 'QueryOptimizer',
llm: 'openai/gpt-4o',
defaultStrategy: 'expand',
verbose: true
});
Rewrite Strategies
Copy
import { QueryRewriterAgent } from 'praisonai';
const agent = new QueryRewriterAgent();
// Expand - add more context
const expanded = await agent.rewrite('AI', 'expand');
// Simplify - reduce complexity
const simplified = await agent.rewrite('complex query with many terms', 'simplify');
// Decompose - break into sub-queries
const decomposed = await agent.rewrite('AI and ML and DL', 'decompose');
// Rephrase - same meaning, different words
const rephrased = await agent.rewrite('how to learn coding', 'rephrase');
// Auto - detect best strategy
const auto = await agent.rewrite('some query', 'auto');
Result Structure
Copy
interface RewriteResult {
original: string; // Original query
rewritten: string[]; // Rewritten versions
strategy: RewriteStrategy; // Strategy used
confidence: number; // Confidence score
}
Multiple Rewrites
Copy
import { QueryRewriterAgent } from 'praisonai';
const agent = new QueryRewriterAgent();
const result = await agent.rewrite('machine learning basics');
// Get all rewritten versions
result.rewritten.forEach((query, i) => {
console.log(`Version ${i + 1}: ${query}`);
});
Factory Function
Copy
import { createQueryRewriterAgent } from 'praisonai';
const agent = createQueryRewriterAgent({
name: 'Optimizer',
defaultStrategy: 'expand'
});

