@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
83 lines • 4.49 kB
TypeScript
import type { ChatGptAskRequestParams, ChatGptAskResponse, ChatGptAskResult } from '../schemas';
import type { EndpointConfig } from '../../../core/base-client';
type BoundExecuteRequest = <TParams, TResponse>(config: EndpointConfig<TParams, TResponse>, params?: TParams, pathParams?: Record<string, string>) => Promise<TResponse>;
/**
* Creates the chatGpt.ask resource methods
* OpenAPI Path: /chat-gpt/ask → chatGpt.ask.*
* @description ChatGPT question and answer functionality
*/
export declare function createChatGptAskResource(executeRequest: BoundExecuteRequest): {
/**
* Ask ChatGPT a question with advanced AI capabilities
*
* @fullPath api.gregorovich.chatGpt.ask.get
* @service gregorovich
* @domain ai-conversation
* @dataMethod chatGptData.ask.get
* @discoverable true
* @searchTerms ["chatgpt", "ai", "question", "ask", "conversation", "gpt", "openai", "assistant", "chat"]
* @relatedEndpoints ["api.gregorovich.ollama.generate.create", "api.gregorovich.documents.list", "api.agrSite.ai.transcripts.create", "api.p21Pim.ai.suggestions.get"]
* @commonPatterns ["Ask AI question", "Get AI assistance", "Conversational AI", "AI-powered help", "Question answering", "AI consultation"]
* @workflow ["ai-conversation", "customer-support", "content-generation", "decision-support", "knowledge-retrieval"]
* @prerequisites ["Valid authentication token", "x-site-id header", "Question parameter", "ChatGPT service availability"]
* @nextSteps ["Process AI response", "Continue conversation", "Store conversation history", "Analyze AI recommendations"]
* @businessRules ["Requires question parameter", "Supports conversation context", "Token usage tracking", "Response quality metrics", "Configurable AI parameters"]
* @functionalArea "ai-and-automation"
* @crossSite "Multi-site AI conversation support"
* @caching "Cache responses for 1 hour for identical questions, AI responses are generally stable"
* @performance "Response time varies by question complexity, use streaming for long responses"
*
* @param params ChatGPT question parameters including question text and AI configuration options
* @returns Promise<ChatGptAskResponse> Complete AI response with answer, metadata, and usage information
*
* @example
* ```typescript
* // Ask a simple question
* const aiResponse = await client.chatGpt.ask.get({ question: 'What is the weather like today?' });
* console.log(aiResponse.data.answer); // AI generated answer
* console.log(aiResponse.data.tokens); // Token usage information
*
* // Get just the AI answer
* const answer = await client.chatGptData.ask.get({ question: 'Explain quantum computing' });
* console.log(answer.answer); // Direct access to AI response
*
* // Advanced AI configuration
* const complexRequest = {
* question: 'Write a business plan for a tech startup',
* temperature: 0.7,
* maxTokens: 2000,
* format: 'markdown' as const,
* systemPrompt: 'You are a business consultant with 20 years of experience',
* conversationId: 'conv-123',
* language: 'english'
* };
*
* const businessPlan = await client.chatGptData.ask.get(complexRequest);
* console.log(businessPlan.answer); // Detailed business plan
* console.log(businessPlan.usage); // Token usage breakdown
*
* // Continue a conversation
* const followUp = await client.chatGptData.ask.get({
* question: 'Can you expand on the marketing strategy section?',
* conversationId: 'conv-123',
* temperature: 0.5
* });
* ```
*/
get: (params: ChatGptAskRequestParams) => Promise<ChatGptAskResponse>;
};
/**
* Creates the chatGptData.ask resource methods (data-only versions)
*/
export declare function createChatGptAskDataResource(chatGptAsk: ReturnType<typeof createChatGptAskResource>): {
/**
* Ask ChatGPT a question and return AI response data only
* @param params ChatGPT question parameters
* @returns Promise<ChatGptAskResult> AI response with answer and metadata
*/
get: (params: ChatGptAskRequestParams) => Promise<ChatGptAskResult>;
};
export type ChatGptAskResource = ReturnType<typeof createChatGptAskResource>;
export type ChatGptAskDataResource = ReturnType<typeof createChatGptAskDataResource>;
export {};
//# sourceMappingURL=chat-gpt-ask.d.ts.map