( modelName: string, maxTokens: number, prompt: string, )
| 336 | } |
| 337 | |
| 338 | function pruneStringFromBottom( |
| 339 | modelName: string, |
| 340 | maxTokens: number, |
| 341 | prompt: string, |
| 342 | ): string { |
| 343 | const encoding = encodingForModel(modelName); |
| 344 | |
| 345 | const tokens = encoding.encode(prompt, "all", []); |
| 346 | if (tokens.length <= maxTokens) { |
| 347 | return prompt; |
| 348 | } |
| 349 | |
| 350 | return encoding.decode(tokens.slice(0, maxTokens)); |
| 351 | } |
| 352 | |
| 353 | function pruneStringFromTop( |
| 354 | modelName: string, |
no test coverage detected