Spaces:
Runtime error
Runtime error
File size: 1,172 Bytes
86042ad |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
import { api } from "encore.dev/api";
import { secret } from "encore.dev/config";
import log from "encore.dev/log";
import { LLMProviderService } from "../lib/llm-provider";
import type { ModelInfo, LLMProvider } from "../lib/types";
const llmProvider = secret("LLMProvider");
const ollamaBaseURL = secret("OllamaBaseURL");
const huggingFaceAPIKey = secret("HuggingFaceAPIKey");
const defaultModel = secret("DefaultModel");
function getProvider(): LLMProviderService {
return new LLMProviderService({
provider: llmProvider() as LLMProvider,
ollamaBaseURL: ollamaBaseURL(),
huggingFaceAPIKey: huggingFaceAPIKey(),
defaultModel: defaultModel(),
});
}
export interface ModelsResponse {
provider: string;
models: ModelInfo[];
}
// Lists all available LLM models.
export const listModels = api<void, ModelsResponse>(
{ expose: true, method: "GET", path: "/models" },
async () => {
log.info("Models list requested");
const provider = getProvider();
const models = await provider.listModels();
log.info("Models listed", { count: models.length });
return {
provider: provider.getProvider(),
models,
};
}
);
|