Repository navigation
Conversation
LauraGPT
left a comment
There was a problem hiding this comment.
Reviewed the five-file diff at 4c3073a and the actual shared API/launcher implementation.
The five added Runcrate tests and 26 existing related provider/launcher regressions passed independently on Python 3.12 with OpenAI SDK 2.44.0 and external socket connections denied. These are offline mocked-client/AST checks, not a live provider or full Gradio/AI Clip acceptance. A separate four-case real-SDK/mock-transport check produced passing JUnit/log output, but its wrapper failed to capture the child exit code; it is not counted as a complete process receipt.
Before merging, please address:
- The English and Chinese README statements that open models are free with a GitHub account omit material conditions. The official free-inference terms specify account eligibility, shared session/week allowances and capacity limits, with paid fallback when a workspace has credit. Please use neutral wording linking to these conditions, rather than implying unrestricted free clipping. A canonical link without campaign tracking is preferable.
- Please attach the already-run live-check evidence described in the PR: exact head/dependency versions, date, both model IDs, a small synthetic SRT/prompt, and redacted response/parsed segment results. Do not include credentials or private recordings. Existing evidence is sufficient; no need to repeat successful calls just for this review. I have not made provider calls or incurred charges.
- Please retain a Runcrate launcher regression in the repository, covering its dispatch and prompt roles as well as the vendor-qualified model IDs. The new tests cover openai_call directly but would not catch loss of the new launcher route. Existing providers already have corresponding launcher tests.
The prefix/key isolation and vendor preservation worked in the checked offline cases. This review is about the documented cost boundary, durable launcher coverage, and evidence for the claimed live path; it is not a request for another administrator to approve.
|
Thanks for the careful review. All three points are addressed in 37daeda. 1. README wording. Both READMEs now link the canonical pages with no campaign parameters ( 2. Live-check evidence. I didn't keep a record of the original check, so I reran it once at 4c3073a (the Runcrate code is unchanged in 37daeda; only README and tests changed), 2026-11-01 10:12 UTC, Python 3.12.13, Responses, then
So the route, prefix stripping and key isolation work for both models. Whether a reply matches the strict 3. Launcher regression. New Tests on 37daeda, Python 3.12: I wrote this follow-up and the new test with AI assistance (omp with Claude). The test runs and the live calls above were run while preparing it. |
Summary
funclip/llm/openai_api.py: aruncrate/prefix that is stripped before the request (model ids keep their vendor, e.g.deepseek-ai/DeepSeek-V4.1-Flash), base URLhttps://api.runcrate.ai/v1(overridable withRUNCRATE_API_BASE), key from the APIKEY box orRUNCRATE_API_KEY, neverOPENAI_API_KEY.funclip/launch.py:runcrateinSUPPORT_LLM_PREFIX, theruncrate/route toopenai_call, and two dropdown entries:runcrate/deepseek-ai/DeepSeek-V4.1-Flashandruncrate/openai/gpt-oss-120b.tests/test_runcrate_launch_integration.py: launcher dispatch, prompt roles and vendor-qualified dropdown ids (added in 37daeda after review).tests/test_runcrate_api.py: base URL, prefix stripping, env key,RUNCRATE_API_BASEoverride, empty model, and no fallback to the OpenAI key.User impact
Users can run LLM-assisted clipping on open models through Runcrate. Runcrate has a free allowance on some open models, with the limits in its free inference terms; usage beyond it is paid.
Validation
pytest tests/test_runcrate_api.py tests/test_cheaperinference_api.py tests/test_orcarouter_api.py tests/test_minimax_api.py tests/test_openai_api.py tests/test_*_launch_integration.py tests/test_model_selection.py: 39 passed.openai_call("", "runcrate/<model>", <prompt + SRT>, demo_prompt)withRUNCRATE_API_KEYset and no OpenAI variables. Bothdeepseek-ai/DeepSeek-V4.1-Flashandopenai/gpt-oss-120breturned a segment in the1. [start-end] textformat that the AI Clip step parses.Notes for reviewers
Disclosure: I work on Runcrate. This PR was prepared with AI assistance (an AI coding agent wrote the change and ran the tests and the live check above).