Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Add a dedicated Chutes sidecar route without changing existing /v1/chat/completions behavior

オープン
#8 コメント 3 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
55/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
静か
技術スタック
python
領域
api, backend, security

調査の方向性

まず、既存の POST /v1/chat/completions ハンドラーと、その E2EE の parse/decrypt および encrypt ロジックを追跡します。次に、設定とエラーがどのように処理されているかを確認し、明示的に有効化された Chutes ルートを追加して、stream および non-stream の動作、リプレイ保護、設定不備時の 503 レスポンス、既存の動作が変更されていないこと、ログに API-key が漏洩していないことを検証します。

索引モデルが issue の本文から書いたものです。

説明

Summary

We want to integrate Chutes models into vllm-proxy while preserving the current production-stable behavior for existing users.

Instead of modifying the current /v1/chat/completions path, add a dedicated Chutes route:

  • POST /v1/chutes/chat/completions
  • GET /v1/chutes/models

This lets upstream gateways (e.g., Redpill) continue receiving standard OpenAI-style /v1/chat/completions requests and selectively forward Chutes-bound traffic to the new sidecar route.

Goals

  • Keep existing /v1/chat/completions behavior unchanged
  • Minimize coupling/risk to current production path
  • Add Chutes integration behind explicit route + config flag

Proposed behavior

Existing route (unchanged)

POST /v1/chat/completions

  • continues to forward to local vLLM backend as today
New Chutes route

POST /v1/chutes/chat/completions

  • reuses existing E2EE parse/decrypt logic on ingress
  • forwards plaintext request to Chutes OpenAI-compatible endpoint over TLS:
    • ${CHUTES_BASE_URL}/v1/chat/completions
    • with Authorization: Bearer ${CHUTES_API_KEY}
  • reuses existing E2EE encrypt logic on egress
New Chutes models route

GET /v1/chutes/models

  • proxies ${CHUTES_BASE_URL}/v1/models with Chutes auth header

Config

  • CHUTES_ENABLED (default false)
  • CHUTES_BASE_URL (default https://llm.chutes.ai)
  • CHUTES_API_KEY (required if enabled)

Security note

This is not pure client-to-model cryptographic E2EE.
It is a practical TEE-mediated segmented model:

  • Client ↔ Proxy: existing E2EE
  • Proxy ↔ Chutes: TLS
  • Plaintext is only visible inside trusted runtime boundaries

Acceptance criteria

  1. Existing route behavior remains unchanged
  2. Chutes route supports stream + non-stream
  3. Existing E2EE nonce/replay checks remain in effect
  4. Misconfig returns explicit 503 errors
  5. No API-key leakage in logs
主要言語
Python
スター
0
フォーク
2
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。