refactor: move final rendering into Renderer class
This commit is contained in:
parent
cdfafc9d5f
commit
c1e03f2464
2 changed files with 19 additions and 11 deletions
|
|
@ -131,12 +131,27 @@ export default class Renderer {
|
|||
}
|
||||
}
|
||||
|
||||
renderStats(usage: LanguageModelUsage, start: number, stop: number) {
|
||||
const { inputTokens, outputTokens } = usage;
|
||||
async renderStats(
|
||||
usage: PromiseLike<LanguageModelUsage>,
|
||||
start: number,
|
||||
stop: number,
|
||||
) {
|
||||
const { inputTokens, outputTokens } = await usage;
|
||||
const context = (inputTokens ?? 0) / 1000;
|
||||
const output = (outputTokens ?? 0) / 1000;
|
||||
const time = (stop - start) / 1000;
|
||||
const template = `Context: ${context.toFixed(1)}k, Output: ${output.toFixed(1)}k, Time: ${time.toFixed(2)}s\n`;
|
||||
process.stderr.write(chalkStderr.dim(template));
|
||||
}
|
||||
|
||||
async renderFinal(textStream: AsyncIterableStream<string>) {
|
||||
if (this.isPlain) return;
|
||||
|
||||
const [width] = process.stdout.getWindowSize();
|
||||
await Bun.spawn({
|
||||
cmd: ["glow", "-w", `${width}`, "-"],
|
||||
stdin: textStream,
|
||||
stdout: "inherit",
|
||||
}).exited;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue