Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Support making raw requests

Aperta
#678 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
45/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
java, python
Ambito
api

Direzione di ricerca

Inizia confrontando i punti di ingresso delle richieste del client Java con src/openai/_base_client.py e src/openai/_client.py nelle posizioni Python collegate. Traccia il modo in cui le richieste sincrone e asincrone gestiscono percorsi, body, file, streaming e tipi di risposta; il lavoro è completato quando il supporto equivalente per le raw request è disponibile in entrambe le modalità del client Java, con test corrispondenti.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement sdk

The official Python OpenAI client implements a "post()" method: in the SyncAPIClient class, with the OpenAI class being a subclass of SyncAPIClient.
This method is also implemented for the AsyncAPIClient and thus for the AsyncOpenAI class.

This post method is mainly a wrapper around httpx (as self.request is a direct call to httpx), which is a general-purpose HTTP client. It is very convenient to create fine-grained custom requests, port requests to other automated tested tools such as Postman and curl, and overall understand the HTTP requests being made.

def post(
    self,
    path: str,
    *,
    cast_to: Type[ResponseT],
    body: Body | None = None,
    options: RequestOptions = {},
    files: RequestFiles | None = None,
    stream: bool = False,
    stream_cls: type[_StreamT] | None = None,
) -> ResponseT | _StreamT:
    opts = FinalRequestOptions.construct(
        method="post", url=path, json_data=body, files=to_httpx_files(files), **options
    )
    return cast(ResponseT, self.request(cast_to, opts, stream=stream, stream_cls=stream_cls))

To reach feature-parity with the Python client, it would be very convenient to port this method to the Java client. This request is for example used in the vLLM documentation

Lingua principale
Kotlin
Stelle
1.5k
Fork
266
Merge medio
9h 50m
PR unite (30g)
146

Preparare l'ambiente

Apri in Codespaces

Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di openai/openai-java

Tutte le issue di openai/openai-java

Issue simili

Altre issue su Kotlin

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.