-
Notifications
You must be signed in to change notification settings - Fork 322
Create Fine-tune with traces & tools #781
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
chiang-daniel
wants to merge
135
commits into
main
Choose a base branch
from
dchiang/KIL-177/save-run-in-finetune
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+3,571
−457
Open
Changes from all commits
Commits
Show all changes
135 commits
Select commit
Hold shift + click to select a range
17745d5
Add trace based formatter
chiang-daniel 08028ee
Add support for OPENAI_CHAT_JSON_SCHEMA_JSONL
chiang-daniel 4929475
use supplied sys prompt
chiang-daniel 08964f8
Add json validation helper
chiang-daniel 7ba3b67
implement OPENAI_CHAT_TOOLCALL_JSONL
chiang-daniel 24e0244
implement hugging face
chiang-daniel 6ee12b9
Add support for Vertex
chiang-daniel 1d020fa
Add test
chiang-daniel 51fede6
better error message
chiang-daniel 3055147
Add tests
chiang-daniel ebf48ee
Fix hugging face
chiang-daniel 06c164e
Add test for HUGGINGFACE_CHAT_TEMPLATE_TOOLCALL_JSONL
chiang-daniel 917f6c9
typo
chiang-daniel c34d086
CoderRabbit
chiang-daniel e9be634
revert back to old HF format
chiang-daniel 9f4e483
better function name tracking
chiang-daniel c674e6b
fine-tune vertex with parallel tool calls
chiang-daniel 6b60f8e
flush user messages as well
chiang-daniel cf3a91f
coder rabbit
chiang-daniel fae29d2
clean up
chiang-daniel f17be0a
feedback
chiang-daniel 460c251
Add trace based formatter
chiang-daniel c529471
Add support for OPENAI_CHAT_JSON_SCHEMA_JSONL
chiang-daniel 2a6b3e3
use supplied sys prompt
chiang-daniel e4bc4f5
Add json validation helper
chiang-daniel 04b30e9
implement OPENAI_CHAT_TOOLCALL_JSONL
chiang-daniel c78789b
implement hugging face
chiang-daniel 1b71eca
Add support for Vertex
chiang-daniel 17f946f
Add test
chiang-daniel d606e08
better error message
chiang-daniel 65b9e14
Add tests
chiang-daniel 3d167cc
Fix hugging face
chiang-daniel 84d2481
Add test for HUGGINGFACE_CHAT_TEMPLATE_TOOLCALL_JSONL
chiang-daniel 8db7b95
typo
chiang-daniel 4582f7a
CoderRabbit
chiang-daniel c08bf83
revert back to old HF format
chiang-daniel 6b75eff
Add run-config creation
chiang-daniel 3d2d559
Add run-config to fine-tune
chiang-daniel af6c9b0
Filter models based on tool support
chiang-daniel 3a24615
fix
chiang-daniel d09df97
hide tools when using a model that doesn't support tools
chiang-daniel 7c76e2d
Add tool info for dataset
chiang-daniel 1eb06c7
filter existing dataset based on tools selected
chiang-daniel f5bae58
show disabled dataset
chiang-daniel 6331a6b
Add trace based formatter
chiang-daniel 1bbce5f
Add support for OPENAI_CHAT_JSON_SCHEMA_JSONL
chiang-daniel 71c4e48
use supplied sys prompt
chiang-daniel 96944f5
Add json validation helper
chiang-daniel dc709c6
implement OPENAI_CHAT_TOOLCALL_JSONL
chiang-daniel c9f09e0
implement hugging face
chiang-daniel c25044d
Add support for Vertex
chiang-daniel 7ad3f1d
Add test
chiang-daniel deeb72e
better error message
chiang-daniel 1e5eb5b
Add tests
chiang-daniel bcfeed5
Fix hugging face
chiang-daniel fdf6041
Add test for HUGGINGFACE_CHAT_TEMPLATE_TOOLCALL_JSONL
chiang-daniel f2eaaa1
typo
chiang-daniel ed07487
CoderRabbit
chiang-daniel d50823b
revert back to old HF format
chiang-daniel 11d15c5
better function name tracking
chiang-daniel c0377dc
fine-tune vertex with parallel tool calls
chiang-daniel b87ca11
flush user messages as well
chiang-daniel de340e3
coder rabbit
chiang-daniel 93860d1
clean up
chiang-daniel 3c6da68
feedback
chiang-daniel a7bed2b
Merge branch 'dchiang/KIL-175/trace-in-fine-tune' of https://github.c…
chiang-daniel d9eae60
Add run-config creation
chiang-daniel 5fc25dd
Add run-config to fine-tune
chiang-daniel 400856d
Filter models based on tool support
chiang-daniel 8274399
fix
chiang-daniel f533d87
hide tools when using a model that doesn't support tools
chiang-daniel 2a228c0
Add tool info for dataset
chiang-daniel ba3887e
filter existing dataset based on tools selected
chiang-daniel 2f20613
show disabled dataset
chiang-daniel f7eab95
Add API to filter fine-tune dataset with tools
chiang-daniel b81dacd
use fancy select
chiang-daniel 44ba44c
Merge branch 'dchiang/KIL-177/save-run-in-finetune' of https://github…
chiang-daniel c27c779
Default to create new data sets
chiang-daniel 5e6722e
make dataset formatter async
chiang-daniel 6d8ae04
add support for tools
chiang-daniel 8eb92ac
add test
chiang-daniel c0c058b
add openai jsonl
chiang-daniel 8c4f32e
fix vertex with tools
chiang-daniel 3f11ddb
update UI
chiang-daniel 6c2cb6f
fix prompt selector not being plumb properly
chiang-daniel 19b4760
Add basic types to chat formatter
chiang-daniel 5895fdc
add build_tool_call_messages
chiang-daniel b678d93
plumb open ai format
chiang-daniel 711e58f
Add test for open ai and open ai jsonl
chiang-daniel 686c2e4
Add test
chiang-daniel 3813b65
add vertex
chiang-daniel 3ae6ee6
disable tool selector
chiang-daniel 0198264
UI polish
chiang-daniel 89537ba
fix spacing
chiang-daniel 1c29ca0
Merge branch 'main' into dchiang/KIL-177/save-run-in-finetune
chiang-daniel 62fd7d2
revert select fine-tune dataset
chiang-daniel 5dac78e
plumb selected tools through SDG
chiang-daniel 786e707
disable together ai
chiang-daniel dec38e6
remove trace based dataset formatter
chiang-daniel c65ae91
Add analytics
chiang-daniel 89001c7
filter dataset based on tool selection
chiang-daniel 3365bc5
update UI message
chiang-daniel edce5d1
use undefined to required_tool_ids
chiang-daniel c5c5c53
store page data
chiang-daniel d629171
clean up
chiang-daniel 32926bd
use empty string for tool call content
chiang-daniel 86e6fd5
ui tweaks
sfierro 4db9cb9
sam's changes to refactor tool selector to take in settings prop and …
sfierro 0c33a74
default tools selector settings
sfierro 0121f9d
fix empty tool label
chiang-daniel ecc83aa
fix select existing dataset is visible when there are dataset split w…
chiang-daniel f0dd0bf
coder rabbit
chiang-daniel b280e4d
coder rabbit
chiang-daniel bfe2448
add caching for tools so we don't make extra server calls
chiang-daniel cf1d93f
Add reset & doc button to match SDG
chiang-daniel 4aa1daf
remove logging
chiang-daniel 3fe4284
coder rabbit
chiang-daniel c0d90a1
UI CR from Leonard
chiang-daniel ce72f0b
optional on the form
chiang-daniel f4aa708
move reasoning dataset to after the dataset has been selected
chiang-daniel f6b7382
increase timeout on fireworks finetune, 5s http timeout is not enough…
chiang-daniel 2f1fd4a
add finetune run config to run page selection
chiang-daniel c76dc65
typo
chiang-daniel 178c710
reload store when new fine-tune is created
chiang-daniel fe1569f
Merge branch 'main' into dchiang/KIL-177/save-run-in-finetune
chiang-daniel cf7faae
save model name and provider
chiang-daniel dcb8ff2
persist prompt id & structured_output_mode
chiang-daniel 27dc088
Clean fine-tuning UI for fine-tune-run-configs. Also lots of concurre…
scosman a13e08e
Merge branch 'dchiang/KIL-177/save-run-in-finetune' into scosman/run_…
chiang-daniel 4357c16
remove todos
chiang-daniel 86dcd0c
fix typo
chiang-daniel f4b4b99
fix issues where model/run-config not loaded on first select
chiang-daniel 76f39c3
typecheck fix
scosman bece629
don't reload run_configs constantly in UI. Only force reload if force…
scosman 4adf7f4
Merge pull request #865 from Kiln-AI/scosman/run_config_ui_updates_v2
scosman File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: Empty tool filter treated as no filter
The
compute_finetune_tag_infofunction's docstring states "Only runs with exactly these tools will be included", but passing an empty list[]astool_filteris treated the same asNone(no filtering). This is becauseset(tool_filter) if tool_filter else Noneevaluatesbool([])asFalse. If someone wants to filter to runs with exactly zero tools, this won't work as documented. The condition should checkif tool_filter is not Noneinstead of justif tool_filterto properly distinguish between "no filter requested" and "filter to runs with no tools". The same pattern exists foreligible_datasetsfiltering at line 380. The frontend guards against this by only sending non-empty arrays, but the backend function's behavior is inconsistent with its documentation.Additional Locations (1)
app/desktop/studio_server/finetune_api.py#L379-L380