Skip to Content
Packages@loop/ai

@loop/ai

AI provider abstraction layer for Loop Health. Provides a unified interface for OpenAI and Anthropic with support for embeddings, PDF extraction, and text chunking.

Installation

pnpm add @loop/ai

Client Creation

import { createAIClient } from '@loop/ai'; const client = createAIClient({ provider: 'openai', apiKey: process.env.OPENAI_API_KEY!, model: 'gpt-4o', });

Embeddings

import { createAIClient } from '@loop/ai'; const client = createAIClient({ provider: 'openai', apiKey }); // Single embedding const embedding = await client.embed('What is BPC-157?'); // Batch embeddings const embeddings = await client.embedBatch([ 'BPC-157 benefits', 'TB-500 mechanism', ]);

Text Processing

import { chunkText, extractPlainTextFromLexical } from '@loop/ai'; // Chunk long text for embedding const chunks = chunkText(longDocument, { maxChunkSize: 500, overlap: 50 }); // Extract plain text from Payload CMS Lexical rich text const plainText = extractPlainTextFromLexical(lexicalContent);

Research Paper Ingestion

import { ingestResearchPaper } from '@loop/ai'; await ingestResearchPaper({ title: 'BPC-157 Gastrointestinal Effects', content: paperContent, metadata: { doi: '10.1234/example' }, });

Used By

@loop/ai is used by applications that need AI and embedding capabilities: