@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
74 lines • 3.82 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.GregorovichClient = void 0;
const base_client_1 = require("../../core/base-client");
const resources_1 = require("./resources");
/**
* Gregorovich AI Service Client
*
* Provides access to AI-powered document management and conversational AI endpoints
* including ChatGPT integration, Ollama local models, and document processing capabilities.
*
* @service gregorovich
* @domain ai-and-document-management
* @discoverable true
* @searchTerms ["ai", "chatgpt", "ollama", "documents", "gregorovich", "artificial intelligence"]
* @relatedEndpoints ["api.gregorovich.chatGpt.ask.get", "api.gregorovich.ollama.generate.create", "api.gregorovich.documents.list"]
* @commonPatterns ["AI conversation", "Document management", "Local AI generation", "AI-powered assistance"]
* @workflow ["ai-operations", "document-processing", "conversational-ai"]
* @functionalArea "ai-and-document-management"
* @example
* ```typescript
* import { HTTPClient } from '@augur/api-client/core';
* import { GregorovichClient } from '@augur/api-client/services/gregorovich';
*
* const http = new HTTPClient('gregorovich', { siteId: 'your-site-id', bearerToken: 'your-token' });
* const gregorovich = new GregorovichClient(http);
*
* // Check service health
* const health = await gregorovich.healthCheck.get();
* const healthData = await gregorovich.healthCheckData.get();
*
* // Ask ChatGPT
* const response = await gregorovich.chatGpt.ask.get({ question: 'What is AI?' });
* const answer = await gregorovich.chatGptData.ask.get({ question: 'Explain ML' });
*
* // List documents
* const docs = await gregorovich.documents.list();
* const docsList = await gregorovich.documentsData.list();
*
* // Generate with Ollama
* const generation = await gregorovich.ollama.generate.create({ model: 'llama2', prompt: 'Write a story' });
* const story = await gregorovich.ollamaData.generate.create({ model: 'llama2', prompt: 'Write a poem' });
* ```
*/
class GregorovichClient extends base_client_1.BaseServiceClient {
constructor(http, baseUrl) {
super('gregorovich', http, baseUrl || 'https://gregorovich.augur-api.com');
// Bind executeRequest for resource factories
const boundExecuteRequest = (config, params, pathParams) => {
if (params !== undefined || config.paramsSchema !== undefined) {
return this.executeRequest(config, params, pathParams);
}
return this.executeRequest(config, undefined, pathParams);
};
// Initialize resources
this.healthCheck = (0, resources_1.createHealthCheckResource)(boundExecuteRequest);
this.healthCheckData = (0, resources_1.createHealthCheckDataResource)(this.healthCheck);
const chatGptAsk = (0, resources_1.createChatGptAskResource)(boundExecuteRequest);
const chatGptAskData = (0, resources_1.createChatGptAskDataResource)(chatGptAsk);
this.chatGpt = { ask: chatGptAsk };
this.chatGptData = { ask: chatGptAskData };
this.documents = (0, resources_1.createDocumentsResource)(boundExecuteRequest);
this.documentsData = (0, resources_1.createDocumentsDataResource)(this.documents);
const ollamaGenerate = (0, resources_1.createOllamaGenerateResource)(boundExecuteRequest);
const ollamaGenerateData = (0, resources_1.createOllamaGenerateDataResource)(ollamaGenerate);
this.ollama = { generate: ollamaGenerate };
this.ollamaData = { generate: ollamaGenerateData };
}
getServiceDescription() {
return 'AI-powered document management and conversational AI service with ChatGPT and Ollama integration';
}
}
exports.GregorovichClient = GregorovichClient;
//# sourceMappingURL=client.js.map