Skip to content

fix: remove online serving overview from SDK docs (closes #22) - #70

Open
9Olive wants to merge 4 commits into
kumo-ai:mainfrom
9Olive:remove-online-serving-sdk-docs
Open

fix: remove online serving overview from SDK docs (closes #22)#70
9Olive wants to merge 4 commits into
kumo-ai:mainfrom
9Olive:remove-online-serving-sdk-docs

Conversation

@9Olive

@9Olive 9Olive commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Addresses #22: online serving is not yet available for customers, so this removes the section from context/platform/sdk-overview.md (the Online Serving section, the launch_online_serving_endpoint()/predict()/update()/ping()/destroy() examples, and the workflow-step-7 mention) and removes the premature online-serving mentions from context/guides/rfm-vs-training.md's RFM-vs-training comparison table and decision bullets, per the issue's action item to check other customer-facing docs. No other content in either file was touched. When online serving is reintroduced for customers, these sections can be restored following the official docs at https://kumo.ai/docs/fine-tuning/online-serving/.

@9Olive

9Olive commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Hold: this removes the entire Online Serving section, but the repo authoritatively documents it (the Online Serving section in sdk-overview.md; gap doc-010 endpoint.ping() is marked resolved). Removing it contradicts the repo's own docs. (Aside: kumoai.launch_online_serving_endpoint isn't a top-level symbol in installed 2.22.0, but that's inconclusive - it may live elsewhere.) Please confirm the feature was actually removed upstream before merging.


Automated internal-consistency review (cross-checked against the repo's own authoritative docs; a few SDK-surface claims spot-checked against installed kumoai 2.22.0).

@Manushpm8

Copy link
Copy Markdown
Collaborator

Leaving open — this needs a product/maintainer decision, not a source verdict. The Online Serving API this PR removes is fully implemented and shipped in the SDK: launch_online_serving_endpoint(...) (kumo-sdk/kumoai/trainer/job.py:260) returning an OnlineServingEndpoint with predict/ping/update/destroy (kumoai/trainer/online_serving.py). sdk-overview.md is sourced from job.py, so the docs are accurate. The PR's rationale — that online serving isn't yet available to customers — is a product-availability claim that source can neither confirm nor deny. If it's intentionally not GA, gating it with a "not yet generally available" note is preferable to deleting working, accurate API reference; if it is available, the docs should stay. cc @9Olive — your call.

@leena-kang

Copy link
Copy Markdown
Contributor

Blocked / unable to verify

The SDK proves online serving exists, but cannot establish customer entitlement or GA availability:

# /home/leena/code/kumo/kumo-sdk/kumoai/trainer/job.py:260-264
def launch_online_serving_endpoint(...) -> OnlineServingEndpointFuture:
# /home/leena/code/kumo/kumo-sdk/kumoai/trainer/online_serving.py:37,49,95,100,167
class OnlineServingEndpoint:
    def predict(...):
    def ping(...):
    def update(...):
    def destroy(...):

Accuracy fix — Required to unblock: Obtain confirmation from a maintainer or product owner that online serving is unavailable to customers and should be removed from customer-facing guidance. Repository and SDK evidence alone cannot verify that central claim.

Accuracy fix — Required after that determination: Keep repository metadata consistent. If removal remains, update meta/skills/sync/sync-kumo-sdk.md:33, which still routes online_serving.py into sdk-overview, and context/_gaps.yaml:164-176, where doc-010 remains resolved by documentation that was deleted.

If the documentation is restored, use result(), not attach(), and avoid a numeric latency guarantee:

# /home/leena/code/kumo/kumo-sdk/kumoai/trainer/online_serving.py:171
class OnlineServingEndpointFuture(KumoFuture[OnlineServingEndpoint]):

# /home/leena/code/kumo/kumo-sdk/kumoai/futures.py:42,51,80,85
class KumoFuture:
    def result(...):
class KumoProgressFuture(KumoFuture):
    def attach(...):

Accurate checks

  • Removing the deleted attach() example corrects an API error.
  • Removing the numeric “ms” latency claim is accurate; the SDK only states “low-latency” at kumoai/trainer/online_serving.py:59.
  • The endpoint methods and optional real-time features shown in the deleted section otherwise match the SDK.

Local checks

$ git diff --check origin/main...HEAD
(no output; exit 0)
$ rg -n -i "online serving|online endpoint|launch_online_serving_endpoint|realtime" CLAUDE.md AGENTS.md README.md docs skills meta context
context/_gaps.yaml:167:      Health check for online serving endpoints. update() accepts

Grammar/spelling: No issues found in the changed Markdown.

@leena-kang

Copy link
Copy Markdown
Contributor

Changes needed before merge

This is a follow-up review under the expanded non-agent Kumo-repo evidence policy. Recommendation: do not merge as-is. The authoritative evidence supports “gated/experimental,” not the blanket claim “unavailable to customers.” Keep the removal of the legacy snippet, but restore Online Serving as a qualified fine-tuned-SDK capability and point to the current provisioned workflow.

Evidence

  • Product gating: kumo at fetched origin/master SHA 8e0685108b96a37fff2780b8a1491852deceae8e defaults ONLINE_SERVING_MODE to DISABLED (gira/controller/gira_controller.py:10-18), while the disabled route says the feature is Alpha and directs users to contact Kumo for early access (rest/public/routers/online_serving_jobs.py:163-169). This establishes limited rollout, not universal customer unavailability.
  • Customer availability: docs at fetched origin/master SHA cfa17dd2e775b6341299da579a5a2180e2a85116 includes fine-tuning/online-serving in customer navigation (docs.json:166-175) and documents live endpoints plus tenant credentials provisioned by the customer’s Kumo team (fine-tuning/online-serving.mdx:7,20-28,97-114). Its history explicitly records the customer-facing intent: git -C ~/code/kumo/docs log origin/master --format='%H %s' -- fine-tuning/online-serving.mdx5aa4a285f7118670bb6a5df70f27113eabac7275 Simplify online serving page into a customer-facing quickstart (#122).
  • Current SDK status: kumo-sdk at fetched origin/main SHA 0b992d46cbbd10a58e023f166d9a6da4361de40f exposes the separate deployment client (kumoai/online/__init__.py:1-4,66-79,228-273) and explicitly warns that it is experimental (kumoai/online/__init__.py:59-63). DistillationTrainer and export_model implement the documented preparation flow (kumoai/trainer/distilled_trainer.py:16-31; kumoai/artifact_export/job.py:133-145). Implementation alone would not prove entitlement, but together with the customer docs and early-access gate it does not support the PR’s all-customers rationale.
  • Legacy snippet: the older TrainingJobResult.launch_online_serving_endpoint still exists (kumo-sdk, same SHA, kumoai/trainer/job.py:260-279), but its future blocks with result(), not the deleted attach() call (kumoai/trainer/online_serving.py:171-188). Removing that exact snippet is therefore reasonable; removing every capability/decision mention is not.

Required accuracy fix

Replace the blanket removal with concise guidance that Online Serving is experimental/provisioned and uses the current distillation → export → kumoai.online deployment flow. Do not restore the deleted attach() example or an unqualified millisecond guarantee.

Local checks

  • git diff --check origin/main...HEAD — passed.
  • Markdown fence-balance check on both changed files — passed; no YAML changed.
  • No targeted runtime test: customer entitlement/rollout is not testable locally, and the authoritative source/config/docs evidence resolves the review question.

Grammar/spelling: no standalone issues found.

…loses kumo-ai#22)

Resolves merge with origin/main and revises the PR per review (leena-kang).
Online serving is not unavailable to customers - it is gated/experimental:
the control plane defaults to DISABLED and is provisioned by the Kumo team
(Alpha/early access), and kumoai.online is an experimental client. So instead
of removing every mention, keep the removal of the broken legacy
launch_online_serving_endpoint()/attach() snippet but restore online serving
as a qualified experimental capability pointing to the current
distillation -> export -> kumoai.online flow. Also picks up main's
kumoai.experimental.rfm -> kumoai.rfm rename in the comparison table.
@9Olive

9Olive commented Jul 3, 2026

Copy link
Copy Markdown
Contributor Author

Thanks @leena-kang — I agree the blanket removal overstated things, and I've revised the PR accordingly (pushed 7d0c6e7, merge conflicts with main resolved).

Verified your evidence against source: online serving is gated/experimental, not unavailable — ONLINE_SERVING_MODE defaults to DISABLED and the disabled route is Alpha/early-access (kumo), kumoai.online exists but emits an ExperimentalWarning (kumo-sdk kumoai/online/__init__.py:59-63), and the legacy TrainingJobResult.launch_online_serving_endpoint() future blocks with .result() — not .attach() (kumoai/trainer/online_serving.py:183), confirming the removed snippet was buggy.

So instead of deleting every mention:

  • Kept the removal of the broken launch_online_serving_endpoint() / .attach() snippet.
  • Restored online serving as a qualified experimental capability: a concise "## Online Serving (Experimental)" section in sdk-overview.md pointing to the current distillation → export_modelkumoai.online flow (no .attach(), no unqualified millisecond guarantee), and re-added the comparison-table row / prose in rfm-vs-training.md marked experimental + Kumo-provisioned.
  • The merge also picks up main's kumoai.experimental.rfmkumoai.rfm rename.

git diff --check origin/main...HEAD is clean.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants