(options: ClassifyOptions)
| 169 | * if (result.result) { ... } |
| 170 | */ |
| 171 | export async function classify(options: ClassifyOptions): Promise<ClassifyResult> { |
| 172 | const { prompt, operationName = 'llm-classify' } = options; |
| 173 | |
| 174 | const llmResult = await complete({ |
| 175 | prompt, |
| 176 | maxTokens: 10, |
| 177 | model: 'fast', |
| 178 | operationName, |
| 179 | }); |
| 180 | |
| 181 | return { |
| 182 | result: llmResult.text.toUpperCase() === 'YES', |
| 183 | model: llmResult.model, |
| 184 | inputTokens: llmResult.inputTokens, |
| 185 | outputTokens: llmResult.outputTokens, |
| 186 | latencyMs: llmResult.latencyMs, |
| 187 | }; |
| 188 | } |
| 189 | |
| 190 | /** |
| 191 | * Reset the client (for testing) |
no test coverage detected