Nodig vrienden uit en verdien gratis tokens!Meer weten

Een chat-creatieafbeelding maken (niet-streaming)

Deze API wordt gebruikt om een prompt (met tekst of afbeeldingen) naar het model te sturen. Het model retourneert vervolgens één of meerdere gegenereerde antwoorden. Deze interface is vooral geschikt voor modellen die multimodale invoer ondersteunen (zoals beeldverwerking, beeldverfraaiing en visuele creatieve taken), bijvoorbeeld gpt-4o-image-vip.

Interface-informatie

  • Endpoint: https://api.codingplanx.ai/v1/chat/completions
  • HTTP-methode: POST
  • Content-Type: application/json
  • Response-Type: application/json

Request-headers (Headers)

ParameternaamVerplichtTypeVoorbeeldwaardeBeschrijving
Content-TypeJaStringapplication/jsonFormaat van de request body
AcceptJaStringapplication/jsonGewenst responseformaat
AuthorizationNeeStringBearer {{YOUR_API_KEY}}API-sleutel voor authenticatie

Request-parameters (Body)

De request body is een JSON-object met de volgende velden:

ParameternaamTypeVerplichtStandaardwaardeBeschrijving
modelStringJa-De model-ID die gebruikt moet worden. Bijvoorbeeld: gpt-4o-image-vip.
messagesArrayJa-Lijst met conversatieberichten. Elk object bevat role (user/assistant/system) en content. content kan een string zijn, of een array van objecten met type en afbeeldings-URL.
toolsArrayJa-Een lijst met tools die het model kan aanroepen. Momenteel worden alleen functies ondersteund.
tool_choiceObjectJanoneBepaalt welke functie wordt aangeroepen. none betekent geen aanroep, auto betekent automatisch kiezen.
temperatureNumberNee1Sampling-temperatuur (0-2). Hoe hoger, hoe willekeuriger; hoe lager, hoe geconcentreerder.
top_pNumberNee1Nucleus sampling. Houdt alleen rekening met tokens binnen de bovenste kansmassa P. Aanbevolen om dit als alternatief voor temperature te gebruiken, niet samen.
nIntegerNee1Hoeveel chat-completion-keuzes per invoer moeten worden gegenereerd.
streamBooleanNeefalseOf streaming gebruikt moet worden. Deze interface is momenteel gedefinieerd als niet-streaming.
max_tokensIntegerNeeinfMaximaal aantal tokens dat gegenereerd mag worden.
stopString/ArrayNeenullStopsequentie. De API stopt dan met het genereren van verdere tokens.
presence_penaltyNumberNee0Tussen -2.0 en 2.0. Straft reeds verschenen tokens af om de kans op nieuwe onderwerpen te vergroten.
frequency_penaltyNumberNee0Tussen -2.0 en 2.0. Straft herhaalde tokens af op basis van frequentie.
response_formatObjectNee-Geeft het uitvoerformaat op, bijvoorbeeld { "type": "json_object" } om de JSON-modus in te schakelen.
userStringNee-Unieke identificatie van de eindgebruiker, gebruikt voor misbruikmonitoring.
seenIntegerNee-(Bèta) Geeft een seed-waarde op om deterministische sampling zo goed mogelijk te benaderen.

Response-parameters

ParameternaamTypeBeschrijving
idStringUnieke identificatie van deze request.
objectStringObjecttype, altijd chat.completion.
createdIntegerUnix-tijdstempel (seconden).
choicesArrayBevat de gegenereerde antwoordopties.
└ indexIntegerIndex van de optie.
└ messageObjectBerichtobject met role en content.
└ finish_reasonStringReden waarom de generatie is gestopt (zoals stop, length).
usageObjectTokenverbruik.
└ prompt_tokensIntegerAantal tokens verbruikt door de prompt.
└ completion_tokensIntegerAantal tokens verbruikt door de completion.
└ total_tokensIntegerTotaal verbruik.

Voorbeelden

Request-voorbeeld (beeldverfraaiing / creatieve beeldgeneratie)

{
    "model": "gpt-4o-image-vip",
    "messages": [
      {
            "role": "user",
            "content": [
                {"type": "text", "text": "Verfraai dit soort afbeelding, voeg de woorden 'Ik hou van China' toe, formaat [4:3]"},
                {
                    "type": "image_url",
                    "image_url": {
                        "url": "https://lsky.zhongzhuan.chat/i/2024/10/17/6711068a14527.png"
                    }
                }
            ]
        }
    ],
    "tools": [],
    "tool_choice": "none"
}

Response-voorbeeld

{
    "id": "chatcmpl-123",
    "object": "chat.completion",
    "created": 1677652288,
    "choices": [
        {
            "index": 0,
            "message": {
                "role": "assistant",
                "content": "Prima, de afbeelding is voor u verwerkt. U kunt het gegenereerde resultaat hier bekijken: [afbeeldingslink/beschrijving]"
            },
            "finish_reason": "stop"
        }
    ],
    "usage": {
        "prompt_tokens": 9,
        "completion_tokens": 12,
        "total_tokens": 21
    }
}

FAQ's (Veelgestelde vragen)

V: Waarom geeft een request met response_format: { "type": "json_object" } een fout?
A: Wanneer u de JSON-modus gebruikt, moet u in messages expliciet aangeven dat het model JSON moet genereren (bijvoorbeeld door in de systeemprompt op te nemen: “Geef antwoord in JSON-formaat”). Anders kan het model niet-JSON-inhoud produceren, wat tot een oneindige lus of fout kan leiden.

V: Hoe zorg ik ervoor dat het gegenereerde resultaat bij elke request hetzelfde is?
A: Hoewel AI-modellen willekeurigheid bevatten, kunt u proberen de parameter seen (seed) in te stellen en temperature op 0 te houden. Let daarnaast op het veld system_fingerprint in de response om te controleren of de backend-omgeving is veranderd.

V: Hoe groot moet max_tokens worden ingesteld?
A: Dat hangt af van uw gebruiksscenario. Voor korte afbeeldingsbeschrijvingen is 100-300 meestal voldoende; voor uitgebreide analyse of lange creatieve tekst wordt 1000 of meer aanbevolen. Houd er rekening mee dat de som van invoertokens (inclusief afbeeldingen) en uitvoertokens niet hoger mag zijn dan de contextlimiet van het model.

V: Hoe verwerk ik afbeeldingsinvoer?
A: Gebruik in content van messages het type image_url. Momenteel wordt aangeraden om een openbaar toegankelijke HTTPS-afbeeldingslink te gebruiken.

V: Zijn tools en tool_choice verplicht?
A: Volgens deze interfacedefinitie zijn deze twee velden verplicht. Als u geen specifieke tool hoeft aan te roepen, stel tools dan in op een lege array [] en tool_choice op "none".