Your model, trained where your data lives.
Sharq Engine fine-tunes open models on your records and serves the result as a private endpoint. Every run can be seen, compared and reproduced from its configuration.
From open model to your model.
- 01
Choose a base
Pick an open model family that suits the task and your hardware.
- 02
Train an adapter
LoRA adapters learn your terminology and decisions without retraining the whole model.
- 03
Check it
Sample from every checkpoint against your own test cases before anyone relies on it.
- 04
Serve it
The adapter you approved becomes a private endpoint, with lineage back to its run.
Built for the people who train models.
pythonimport os
import tinker
from tinker import types
client = tinker.ServiceClient(
base_url="https://engine.your-org.internal",
api_key=os.environ["SHARQ_API_KEY"], # your own key
)
# A LoRA adapter on one of the open base models the engine serves
models = client.get_server_capabilities().supported_models
training = client.create_lora_training_client(base_model=models[0].model_name, rank=16)
for batch in batches: # your prepared examples
training.forward_backward(batch, "cross_entropy").result()
training.optim_step(types.AdamParams(learning_rate=1e-4)).result()
# The weights you trained become the model you serve
weights = training.save_weights_for_sampler("claims-assistant-v1").result()
assistant = client.create_sampling_client(model_path=weights.path)
More than one way to teach a model.
Supervised fine-tuning
Train on chat-formatted examples, learning only from the assistant’s side of each conversation.
Reinforcement learning
GRPO-style training on tasks where an answer can be checked automatically.
Distillation
Teach a smaller, cheaper model to behave like a larger one, on its own outputs.
Custom objectives
Bring your own loss, such as preference training combined with likelihood.
Runs on your terms.
- Model families
- Qwen, Llama, Mistral, Falcon, Jais
- Adapters
- Many LoRA adapters per base model, each with its own checkpoints
- Training backends
- Hugging Face and FSDP
- Access
- A personal API key for every developer, stored only as a hash and revocable in the console
- Operations
- OpenTelemetry tracing and metrics; optional state persistence for crash recovery
- Where it runs
- Your GPUs, or Sharq capacity in-region
Questions ML teams ask.
Do we need to train a model from scratch?
No. The engine adapts open base models with LoRA, which takes a fraction of the compute and keeps the base model’s general ability.
Can we use our existing training code?
If it speaks the Tinker SDK, mostly yes: point the client at your engine and use your own key.
Who can see our training data?
Only your people. Data, checkpoints and the finished model stay on the infrastructure you choose.
Start with one workflow.
A pilot runs on your own data, inside your boundary, and is measured against the numbers you already report.