LiteLLM Minor Fixes & Improvements (04/02/2025) (#9725)

* Add date picker to usage tab + Add reasoning_content token tracking across all providers on streaming (#9722)

* feat(new_usage.tsx): add date picker for new usage tab

allow user to look back on their usage data

* feat(anthropic/chat/transformation.py): report reasoning tokens in completion token details

allows usage tracking on how many reasoning tokens are actually being used

* feat(streaming_chunk_builder.py): return reasoning_tokens in anthropic/openai streaming response

allows tracking reasoning_token usage across providers

* Fix update team metadata + fix bulk adding models on Ui  (#9721)

* fix(handle_add_model_submit.tsx): fix bulk adding models

* fix(team_info.tsx): fix team metadata update

Fixes https://github.com/BerriAI/litellm/issues/9689

* (v0) Unified file id - allow calling multiple providers with same file id (#9718)

* feat(files_endpoints.py): initial commit adding 'target_model_names' support

allow developer to specify all the models they want to call with the file

* feat(files_endpoints.py): return unified files endpoint

* test(test_files_endpoints.py): add validation test - if invalid purpose submitted

* feat: more updates

* feat: initial working commit of unified file id translation

* fix: additional fixes

* fix(router.py): remove model replace logic in jsonl on acreate_file

enables file upload to work for chat completion requests as well

* fix(files_endpoints.py): remove whitespace around model name

* fix(azure/handler.py): return acreate_file with correct response type

* fix: fix linting errors

* test: fix mock test to run on github actions

* fix: fix ruff errors

* fix: fix file too large error

* fix(utils.py): remove redundant var

* test: modify test to work on github actions

* test: update tests

* test: more debug logs to understand ci/cd issue

* test: fix test for respx

* test: skip mock respx test

fails on ci/cd - not clear why

* fix: fix ruff check

* fix: fix test

* fix(model_connection_test.tsx): fix linting error

* test: update unit tests
This commit is contained in:
Krish Dholakia 2025-04-03 11:48:52 -07:00 committed by GitHub
parent ad57b7b331
commit 0ce878e804
27 changed files with 889 additions and 96 deletions

View file

@ -13,7 +13,7 @@ import {
TabPanel, TabPanels, DonutChart,
Table, TableHead, TableRow,
TableHeaderCell, TableBody, TableCell,
Subtitle
Subtitle, DateRangePicker, DateRangePickerValue
} from "@tremor/react";
import { AreaChart } from "@tremor/react";
@ -41,6 +41,12 @@ const NewUsagePage: React.FC<NewUsagePageProps> = ({
metadata: any;
}>({ results: [], metadata: {} });
// Add date range state
const [dateValue, setDateValue] = useState<DateRangePickerValue>({
from: new Date(Date.now() - 28 * 24 * 60 * 60 * 1000),
to: new Date(),
});
// Derived states from userSpendData
const totalSpend = userSpendData.metadata?.total_spend || 0;
@ -168,22 +174,34 @@ const NewUsagePage: React.FC<NewUsagePageProps> = ({
};
const fetchUserSpendData = async () => {
if (!accessToken) return;
const startTime = new Date(Date.now() - 28 * 24 * 60 * 60 * 1000);
const endTime = new Date();
if (!accessToken || !dateValue.from || !dateValue.to) return;
const startTime = dateValue.from;
const endTime = dateValue.to;
const data = await userDailyActivityCall(accessToken, startTime, endTime);
setUserSpendData(data);
};
useEffect(() => {
fetchUserSpendData();
}, [accessToken]);
}, [accessToken, dateValue]);
const modelMetrics = processActivityData(userSpendData);
return (
<div style={{ width: "100%" }} className="p-8">
<Text>Experimental Usage page, using new `/user/daily/activity` endpoint.</Text>
<Grid numItems={2} className="gap-2 w-full mb-4">
<Col>
<Text>Select Time Range</Text>
<DateRangePicker
enableSelect={true}
value={dateValue}
onValueChange={(value) => {
setDateValue(value);
}}
/>
</Col>
</Grid>
<TabGroup>
<TabList variant="solid" className="mt-1">
<Tab>Cost</Tab>