Skip to content
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

[Feature] Kiln-Unsloth Bridge for Usability #251

Open
scosman opened this issue Mar 16, 2025 · 0 comments
Open

[Feature] Kiln-Unsloth Bridge for Usability #251

scosman opened this issue Mar 16, 2025 · 0 comments
Labels
enhancement New feature or request

Comments

@scosman
Copy link
Collaborator

scosman commented Mar 16, 2025

Long story short: Unsloth is awesome, local and private - but it's a lot harder to use right now. We export the JSONL format they consume, but you still need to install it, open a notebook, tweak some code, export GGUFs, import GGUFs to Ollama, then add the model in Kiln. The usability is no where near the level we have for fine-tuning on OpenAI or Fireworks (a few clicks and you're running a serverless fine-tune).

Proposal:

Can we write a bridge so that running something like uvx run kiln-unsloth-bridge starts up a local API with higher level unsloth interface. Super high level idea:

  • start_finetune API
    • takes a base model ID, a path to JSONL, optional val set JSONL, hyper params, deployment config
    • Streams progress (SSE)
    • Writes out progress and fine-tune to a local directory when done.
    • Depending on deployment options, deploys it. Ollama GGUFs to start.
    • Error handling

Questions:

Can this be a simple python library? It probably can for some use cases, but Kiln is packaged as a pyinstaller app - I'm betting some of the CUDA/MLX driver bits won't work if packaged in our app format. I should mess around with this and try it. I'm okay with a uvx run xyz if not, but I wouldn't want anything more tedious than that or we won't see a ton of adoption.

Are the unsloth folks planning a higher level api like this? Do they want to own it? Is this better in unsloth, independent, part of kiln, or a collab? There are probably about 50 important details to get right here: the default params for tuning each model, warnings/errors based on available memory/hardware, validation sets, resuming jobs, etc, etc.

@scosman scosman added the enhancement New feature or request label Mar 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant