• Stefy Lanza (nextime / spora )'s avatar
    api: remote gateway — serve any capability from another coderai · 3a4e2605
    Stefy Lanza (nextime / spora ) authored
    Images, video, embeddings, rerank, OCR, TTS, STT, voice cloning, audio
    generation, stems, 3D and pipelines all load their model in-process, so
    none of them had a service to point elsewhere. Writing thirteen services
    would be the long way round; another coderai already exposes all of them,
    so it can be the service.
    
    RemoteGatewayMiddleware sits in front of the routes and, when a request is
    addressed to something configured as remote, replays it verbatim to that
    endpoint and streams the answer back — JSON and multipart alike, since the
    body is forwarded as raw bytes. Routing is per model (`service_url` on the
    models.json entry) first, then per capability (`remotes.endpoints` in
    config.json, or CODERAI_REMOTE_<CAP>_URL).
    
    Placement matters and is deliberate: it is registered first, so it ends up
    innermost — auth, rate limiting and request logging all run before it, and
    a request still has to be authorised here before being forwarded. Chat and
    completions are excluded: those go through RemoteOpenAIBackend, which keeps
    usage accounting, tool parsing and the manager's bookkeeping.
    
    When nothing is configured remote it returns on its first branch and never
    buffers a body (cached 5s so it doesn't walk the model list per request).
    Bodies over `max_body_mb` are served locally rather than held in RAM. A
    non-forwarded request replays its buffered body downstream untouched —
    tested, including multipart uploads that still parse locally.
    
    docs/remote-execution.md documents all four remotization mechanisms
    together.
    Co-Authored-By: 's avatarClaude Opus 5 (1M context) <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_0182DhR1eFNPQyGmDrpHbedY
    3a4e2605
Name
Last commit
Last update
..
__init__.py Loading commit data...
_film_net.py Loading commit data...
_rife_ifnet.py Loading commit data...
app.py Loading commit data...
archive.py Loading commit data...
audio_backends.py Loading commit data...
audio_clean.py Loading commit data...
audio_gen.py Loading commit data...
audio_stems.py Loading commit data...
canary_worker.py Loading commit data...
characters.py Loading commit data...
colibri_worker.py Loading commit data...
crisperwhisper_worker.py Loading commit data...
custom_pipelines.py Loading commit data...
diarization.py Loading commit data...
ds4_kv_janitor.py Loading commit data...
ds4_worker.py Loading commit data...
embeddings.py Loading commit data...
environments.py Loading commit data...
faceswap.py Loading commit data...
fastlog.py Loading commit data...
h3_worker.py Loading commit data...
hub_compat.py Loading commit data...
images.py Loading commit data...
k3_worker.py Loading commit data...
kt_worker.py Loading commit data...
lipsync.py Loading commit data...
log.py Loading commit data...
lora_archs.py Loading commit data...
loras.py Loading commit data...
melotts_worker.py Loading commit data...
mux_remote.py Loading commit data...
ocr.py Loading commit data...
parler_worker.py Loading commit data...
pipelines.py Loading commit data...
prompt_cache.py Loading commit data...
pyannote_worker.py Loading commit data...
ratelimit.py Loading commit data...
remote_gateway.py Loading commit data...
rerank.py Loading commit data...
runpod_client.py Loading commit data...
runpod_ledger.py Loading commit data...
runpod_worker.py Loading commit data...
spatial.py Loading commit data...
speaker_embeddings.py Loading commit data...
speaker_registry.py Loading commit data...
state.py Loading commit data...
stt_backends.py Loading commit data...
text.py Loading commit data...
transcriptions.py Loading commit data...
tts.py Loading commit data...
tts_backends.py Loading commit data...
urlutils.py Loading commit data...
video.py Loading commit data...
vllm_worker.py Loading commit data...
voice_clone.py Loading commit data...
voice_convert.py Loading commit data...
vpr_salad_server.py Loading commit data...