utilitas 1998.1.16 → 1998.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/alan.mjs CHANGED
@@ -322,16 +322,7 @@ const init = async (options) => {
322
322
  if (options?.apiKey) {
323
323
  const OpenAI = await need('openai');
324
324
  const openai = new OpenAI(options);
325
- const chatGpt = options?.chatGptEndpoint || options?.chatGptApiKey
326
- ? new OpenAI({
327
- ...options,
328
- baseURL: options?.chatGptEndpoint || options?.baseURL,
329
- apiKey: options?.chatGptApiKey || options?.apiKey,
330
- }) : openai;
331
- clients[provider] = {
332
- client: openai, clientBeta: openai.beta,
333
- chatGptClient: chatGpt,
334
- };
325
+ clients[provider] = { client: openai, clientBeta: openai.beta };
335
326
  }
336
327
  break;
337
328
  case GEMINI:
@@ -367,10 +358,10 @@ const init = async (options) => {
367
358
  }
368
359
  break;
369
360
  case OLLAMA:
370
- clients[provider] = {
361
+ (clients[provider] || options?.host) && (clients[provider] = {
371
362
  client: new (await need('ollama', { raw: true })).Ollama(options),
372
363
  model: options?.model || DEFAULT_MODELS[OLLAMA],
373
- };
364
+ });
374
365
  break;
375
366
  default:
376
367
  throwError(`Invalid AI provider: ${options?.provider || 'null'}`);
@@ -582,11 +573,11 @@ const packGptResp = async (resp, options) => {
582
573
  };
583
574
 
584
575
  const promptChatGPT = async (content, options = {}) => {
585
- const { chatGptClient } = await getOpenAIClient(options);
576
+ const { client } = await getOpenAIClient(options);
586
577
  // https://github.com/openai/openai-node?tab=readme-ov-file#streaming-responses
587
578
  // custom api endpoint not supported vision apis @todo by @Leask
588
579
  // Structured Outputs: https://openai.com/index/introducing-structured-outputs-in-the-api/
589
- chatGptClient.baseURL !== OPENAI_BASE_URL
580
+ client.baseURL !== OPENAI_BASE_URL
590
581
  && options?.attachments?.length && (options.attachments = []);
591
582
  if (options?.model) { } else if (options?.reasoning) {
592
583
  options.model = DEFAULT_MODELS[CHATGPT_REASONING];
@@ -609,7 +600,7 @@ const promptChatGPT = async (content, options = {}) => {
609
600
  [format, options.audioMimeType, options.suffix]
610
601
  = options?.stream ? ['pcm16', pcm16, 'pcm.wav'] : [WAV, wav, WAV];
611
602
  let [resp, resultText, resultAudio, chunk] = [
612
- await chatGptClient.chat.completions.create({
603
+ await client.chat.completions.create({
613
604
  modalities, audio: options?.audio || (
614
605
  modalities?.find?.(x => x === AUDIO) && {
615
606
  voice: DEFAULT_MODELS[OPENAI_VOICE], format
package/lib/manifest.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  const manifest = {
2
2
  "name": "utilitas",
3
3
  "description": "Just another common utility for JavaScript.",
4
- "version": "1998.1.16",
4
+ "version": "1998.1.18",
5
5
  "private": false,
6
6
  "homepage": "https://github.com/Leask/utilitas",
7
7
  "main": "index.mjs",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "utilitas",
3
3
  "description": "Just another common utility for JavaScript.",
4
- "version": "1998.1.16",
4
+ "version": "1998.1.18",
5
5
  "private": false,
6
6
  "homepage": "https://github.com/Leask/utilitas",
7
7
  "main": "index.mjs",