feat(ollama): Enhance Ollama support by adding new models, updating API format handling, and integrating translation functionality.
This commit is contained in:
@@ -1,8 +1,24 @@
|
||||
import { FORMATS } from "../translator/formats.js";
|
||||
|
||||
// Parse SSE data line
|
||||
export function parseSSELine(line) {
|
||||
if (!line || line.charCodeAt(0) !== 100) return null; // 'd' = 100
|
||||
export function parseSSELine(line, format = null) {
|
||||
if (!line) return null;
|
||||
|
||||
// NDJSON format (Ollama): raw JSON lines without "data:" prefix
|
||||
if (format === FORMATS.OLLAMA) {
|
||||
const trimmed = line.trim();
|
||||
if (trimmed.startsWith("{")) {
|
||||
try {
|
||||
return JSON.parse(trimmed);
|
||||
} catch (error) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
// Standard SSE format: "data: {...}"
|
||||
if (line.charCodeAt(0) !== 100) return null; // 'd' = 100
|
||||
|
||||
const data = line.slice(5).trim();
|
||||
if (data === "[DONE]") return { done: true };
|
||||
|
||||
Reference in New Issue
Block a user