mirror of
https://github.com/Sea-Haven-Industries/open-swe.git
synced 2026-10-05 04:52:12 +00:00
fix: Token data type error (#556)
This commit is contained in:
parent
fb4523539d
commit
d89b37c568
1 changed files with 21 additions and 5 deletions
|
|
@ -11,7 +11,7 @@ import { ThreadMetadata } from "./types";
|
||||||
import { useStream } from "@langchain/langgraph-sdk/react";
|
import { useStream } from "@langchain/langgraph-sdk/react";
|
||||||
import { ManagerGraphState } from "@open-swe/shared/open-swe/manager/types";
|
import { ManagerGraphState } from "@open-swe/shared/open-swe/manager/types";
|
||||||
import { PlannerGraphState } from "@open-swe/shared/open-swe/planner/types";
|
import { PlannerGraphState } from "@open-swe/shared/open-swe/planner/types";
|
||||||
import { GraphState, CacheMetrics } from "@open-swe/shared/open-swe/types";
|
import { GraphState, CacheMetrics, ModelTokenData } from "@open-swe/shared/open-swe/types";
|
||||||
import { ActionsRenderer } from "./actions-renderer";
|
import { ActionsRenderer } from "./actions-renderer";
|
||||||
import { ThemeToggle } from "../theme-toggle";
|
import { ThemeToggle } from "../theme-toggle";
|
||||||
import { HumanMessage } from "@langchain/core/messages";
|
import { HumanMessage } from "@langchain/core/messages";
|
||||||
|
|
@ -47,6 +47,25 @@ interface ThreadViewProps {
|
||||||
onBackToHome: () => void;
|
onBackToHome: () => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const joinTokenData = (plannerTokenData?: CacheMetrics | ModelTokenData[], programmerTokenData?: CacheMetrics | ModelTokenData[]): ModelTokenData[] | CacheMetrics[] => {
|
||||||
|
if (!plannerTokenData && !programmerTokenData) {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
if (plannerTokenData && programmerTokenData) {
|
||||||
|
return [...(Array.isArray(plannerTokenData) ? plannerTokenData : [plannerTokenData]), ...(Array.isArray(programmerTokenData) ? programmerTokenData : [programmerTokenData])];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (plannerTokenData && !programmerTokenData) {
|
||||||
|
return Array.isArray(plannerTokenData) ? plannerTokenData : [plannerTokenData];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!plannerTokenData && programmerTokenData) {
|
||||||
|
return Array.isArray(programmerTokenData) ? programmerTokenData : [programmerTokenData];
|
||||||
|
}
|
||||||
|
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
export function ThreadView({
|
export function ThreadView({
|
||||||
stream,
|
stream,
|
||||||
displayThread,
|
displayThread,
|
||||||
|
|
@ -341,10 +360,7 @@ export function ThreadView({
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
<TokenUsage
|
<TokenUsage
|
||||||
tokenData={[
|
tokenData={joinTokenData(plannerStream.values.tokenData, programmerStream.values.tokenData)}
|
||||||
...(plannerStream.values.tokenData ?? []),
|
|
||||||
...(programmerStream.values.tokenData ?? []),
|
|
||||||
].filter(Boolean)}
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue