Source: https://ailoot.ai/models/fi/sensetime-sensenova-v6-reasoner/
Canonical: https://ailoot.ai/models/fi/sensetime-sensenova-v6-reasoner/
Language: fi

# SenseNova-V6-Reasoner

[Markdown](https://ailoot.ai/models/fi/sensetime-sensenova-v6-reasoner/index.md) · [JSON](https://ailoot.ai/models/fi/sensetime-sensenova-v6-reasoner/facts.json)

## [SenseNova-V6-Reasoner](https://ailoot.ai/models/fi/sensetime-sensenova-v6-reasoner/)

SenseNova V6 Reasoner soveltaa monimutkaista ajattelua kuva- ja tekstikysymyksiin. Valmistajan malliversio palauttaa päättelyaineistoa ja lopullisen tekstivastauksen matemaattisiin, analyyttisiin ja asiakirjojen ymmärtämistehtäviin. Tulos tarkistetaan alkuperäisestä näytöstä.

- [**Ailoot Ultra · OpenAI Chat · SenseNova-V6-Reasoner** `POST /v1/chat/completions` `SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/sensetime-sensenova-v6-reasoner/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/sensetime-sensenova-v6-reasoner/#method-1)
- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/sensetime-sensenova-v6-reasoner/#method-2)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/sensetime-sensenova-v6-reasoner/#method-3)

Tietoa mallista

Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.

SenseNova V6 Reasoner on SenseTimen multimodaalinen malliversio kirjallisten kysymysten ja kuvien monimutkaiseen, harkittuun päättelyyn. Valmistajan malliversiotaulukko kuvaa kuva- ja tekstikeskustelua sekä tulostetta, joka sisältää päättelyprosessin ja lopullisen vastauksen. Sen V6-perhe painottaa yhdistettyä visuaalis-kielellistä ymmärtämistä, matemaattista analyysia ja ohjelmointiin liittyvää päättelyä. Reasoner on erillinen Pro- ja kevyestä Turbo-malliversiosta.

#### Valmistele ongelma ja sen visuaalinen konteksti

Anna kysymys, olennaiset arvot ja ehdot, jotka ratkaisun pitää täyttää. Jos tehtävä käyttää kaaviota, diagrammia tai asiakirjakuvaa, tuo sen selitteet ja määräävät suhteet selkeästi esiin. Pidä annetut arvot erillään oletuksista ja yksilöi puuttuvat tiedot. Hyödyllinen pyyntö voi kysyä, mitä tulkintaa kuvan näyttö tukee ja mikä ehto muuttaisi johtopäätöstä.

Säilytä matemaattisessa ongelmassa alkuperäinen lauseke tai näkyvä kuvio ja sen käyttämät määritelmät. Yksilöi asiakirjavertailussa sivut ja erimielisyyttä ratkaiseva sääntö. Lopputuotoksen pitää tehdä ratkaiseva tulos ja sen oletukset tarkasteltaviksi sen sijaan, että se vain tuottaisi pitkän selityksen puutteellisesti määritellyn tehtävän ympärille.

#### Päättelyaineisto ja lopullinen vastaus

Valmistaja erottaa Reasonerin ajattelutulosteen lopullisesta vastauksesta. Säilytä osien roolit lopputulosta arvioidessasi. Lopullisen vastauksen pitää ilmaista selvästi johtopäätös, sen osoittavat arvot tai ehdot ja mahdolliset ratkaisemattomat tapaukset. Laajasta päättelystä on hyötyä, kun se yhdistää näytön tähän tulokseen. Sen pituus ei ole itsenäinen todiste johtopäätöksen oikeellisuudesta.

Tarkista merkitykselliset laskelmat ja lähdeyhteydet annetusta aineistosta. Diagrammi voidaan tulkita väärin, vaikka selitys näyttäisi johdonmukaiselta. Koodiin liittyvän vastauksen pitää säilyttää konkreettinen syötetapaus ja odotettu toiminta, jotka tekevät ehdotetusta logiikasta arvioitavan. Esitä jatkokysymys tietystä ratkaisemattomasta ehdosta sen sijaan, että pitäisit varmuutta varmennuksena.

#### Multimodaalisen perheen ja versioiden rajat

V6-julkaisu kuvaa yhdistettyä mallisarjaa, joka on koulutettu teksti- ja multimodaaliseen päättelyyn pitkän ajattelun ja globaalin muistin tutkimuksen avulla. Sen tiedote esittelee myös kymmenminuuttisen videon analyysia laajemmassa perheessä ja kuvaa erikseen Omnin reaaliaikaista vuorovaikutusta. Nämä työnkulut ovat erillisiä kuva- ja tekstimuotoisen Reasonerin malliversiotaulukosta, eikä niitä pidä muuttaa dokumentoimattomaksi pyyntökohtaiseksi media- tai tulosterajaksi.

Perheen julkaistu pitkän päättelyn koulutuskuvaus on erillinen täydellisestä natiivin API:n tokenirajataulukosta. Säilytä valittu Reasoner-malliversio ja valmistajan rajapinnan todella palauttama näyttö sen sijaan, että olettaisit Prolla, Turbolla, Omnilla tai myöhemmillä V6.5-julkaisuilla olevan samat säädöt.

#### Tuota tarkasteltava päättelytuotos

Hyödyllinen tulos voi olla ratkaisu, vertailu tai asiakirjakuvaan perustuva selitys. Säilytä alkuperäinen kysymys ja lähdeaineisto lopullisen vastauksen kanssa, jotta ratkaiseva päätelmä voidaan tarkistaa tai sitä voidaan laajentaa. Erota lähteestä luettu arvo, siihen perustuva laskelma ja oletus, jota tehtävä ei osoittanut. Tämä tekee monimutkaisen ajattelun malliversiosta hyödyllisen rajatussa, jäljitettävässä päättelytehtävässä.

Käytännön tehtävä

### Käytännön tehtävä

Tekninen esimerkki englanniksi

```
Separate a reading from a conclusion

Analyze these source readings: [TABLE] Device A: 20 tasks in 5 minutes; Device B: 30 tasks in 10 minutes. [NOTE] The tasks may differ in complexity. Calculate the observed tasks-per-minute rates, then assess the claim 'A is inherently faster.' Separate computed values, supported comparison and the missing condition needed for that broader claim.
```

#### Odotettu tulos

```
A rate table and a concise final assessment separating observations, calculations and an unresolved comparability condition.
```

#### Tarkista tulos

```
Check the answer does not turn unequal task sets into proof of an inherent device advantage.
```

**Ailoot Ultra · OpenAI Chat · SenseNova-V6-Reasoner** `POST /v1/chat/completions` `SenseNova-V6-Reasoner`

[`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=chat)

Muu /`SenseNova-V6-Reasoner`

Mallin ID

- `SenseNova-V6-Reasoner`
- `sensetime/sensenova-v6-reasoner`

### Aloitus

SenseNova V6 Reasoner soveltaa monimutkaista ajattelua kuva- ja tekstikysymyksiin. Valmistajan malliversio palauttaa päättelyaineistoa ja lopullisen tekstivastauksen matemaattisiin, analyyttisiin ja asiakirjojen ymmärtämistehtäviin. Tulos tarkistetaan alkuperäisestä näytöstä.

Hyväksytyt syötteet

Teksti

Tulokset

Teksti

### Saatavilla Ailootissa · syötteet & menetelmät

**Ailoot Ultra · OpenAI Chat · SenseNova-V6-Reasoner** `POST /v1/chat/completions`

Syötetyypit

`text`

Tulostyypit

`text`

Tulosteen muoto

json tai SSE

| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
| --- | --- | --- | --- | --- |
| Kenttä`model` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat SenseNova-V6-Reasoner | Oletus— |
| Kenttä`messages` | Tyyppi`message[]` | VaatimusPakollinen | Arvot & rajat Kohteiden vähimmäismäärä: 1 | Oletus— |
| Kenttä`messages[].role` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat Esimerkit: system, user, assistant, tool, function Ehdot: Tuettujen roolien joukko riippuu valitusta mallista. Riippuu mallista | Oletus— |
| Kenttä`messages[].content` | Tyyppi`string\|content_part[]\|null` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`messages[].tool_calls` | Tyyppi`tool_call[]` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`messages[].tool_call_id` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Sovelletaan, kun: role=tool; käytä todella palautettua ID:tä | Oletus— |
| Kenttä`messages[].name` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`messages[].reasoning_content` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Sovelletaan, kun: Palauta todella saatu päättely takaisin mallille, kun kyseinen malli käyttää sitä | Oletus— |
| Kenttä`messages[].reasoning_details` | Tyyppi`object\|array` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`max_tokens` | Tyyppi`integer` | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 1 Riippuu mallista | Oletus— |
| Kenttä`max_completion_tokens` | Tyyppi`integer` | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 1 Riippuu mallista | Oletus— |
| Kenttä`stream` | Tyyppi`boolean` | VaatimusValinnainen | Arvot & rajat | Oletusfalse |
| Kenttä`stream_options.include_usage` | Tyyppi`boolean` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`temperature` | Tyyppi`number` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`top_p` | Tyyppi`number` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`stop` | Tyyppi`string\|string[]` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`tools` | Tyyppi`function_tool[]` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`tools[].type` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat function Riippuu mallista | Oletus— |
| Kenttä`tools[].function.name` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat Sovelletaan, kun: funktiotyökalu annettu | Oletus— |
| Kenttä`tools[].function.description` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`tools[].function.parameters` | Tyyppi`JSON_schema` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`tool_choice` | Tyyppi`string\|object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`parallel_tool_calls` | Tyyppi`boolean` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`response_format` | Tyyppi`object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`reasoning_effort` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`reasoning` | Tyyppi`object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`service_tier` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`instructions` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Yhteensopivuuskenttä | Oletus— |
| Kenttä`functions` | Tyyppi`function[]` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`function_call` | Tyyppi`string\|object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`prompt_cache_options` | Tyyppi`object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`modalities` | Tyyppi`string[]` | VaatimusValinnainen | Arvot & rajat text | Oletus— |
| Kenttä`provider` | Tyyppi`object` | VaatimusValinnainen | Arvot & rajat Ehdot: provider.options hylätään tällä Ultran tekstireitillä | Oletus— |
| Kenttä`cache_control.ttl` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Ehdot: 1h hylätään varsinaisissa kehotevälimuistin kohdissa | Oletus— |

Syöteaineistojen yhdistelmät

**Teksti** · UTF8-teksti

`messages[].content`

Menetelmän parametrit ja elinkaari

| Parametri | Sopimus |
| --- | --- |
| Parametri`content_type` | Sopimusapplication/json |
| Parametri`required` | Sopimusmodel, messages |
| Parametri`material_types` | Sopimustext |
| Parametri`messages` | Sopimusviestitaulukko role/content-rakenteella |
| Parametri`file_material` | SopimusLue todellinen UTF-8-asiakirjasi ja lisää sen teksti messages\[\].content-kenttään. |
| Parametri`optional_controls` | Sopimusstream, temperature, top\_p, stop, max\_tokens, max\_completion\_tokens, reasoning, response\_format, tools, tool\_choice |
| Parametri`control_scope` | Sopimusmallikohtainen; käyttäjän funktiotyökalut eroavat palvelun isännöimistä työkaluista |
| Parametri`output_modalities` | Sopimustext |
| Parametri`hosted_operations` | Sopimusfalse |
| Parametri`multimodal_input_binding` | Sopimusnull |

Elinkaari: `synchronous_or_streamed`

Lähetä mallin täsmällinen ID yhdessä messages-kentän kanssa.

Kontekstin pituus ei ole tuloksen yläraja.

Tekstitiedosto voi antaa tekstiä sellaisenaan; kuva-, ääni- ja tiedosto-objektisyötteet tarvitsevat täsmällisen sidonnan.

### Hinnoittelu

Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.

Nopea tila

Ei määritetty Kun nopea tila on valittu

Flex-tila

Ei määritetty Kun flex-tila on valittu

Päättelyn enimmäisteho

Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä

#### Ailoot-hinnat

#### Hinnat asetusten mukaan

| Asetukset | Hinnasto | Veloitus |
| --- | --- | --- |
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Veloitus Syöte · Syötetokenit **$0.00132** / 1K tokenia Tuloste · Tulostokenit **$0.00506** / 1K tokenia Syöte · Välimuistin luku **$0** / 1K tokenia Syöte · Välimuistiin kirjoitus **$0** / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti **—** / 1K tokenia |

Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. [Varauksen ja lopullisen veloituksen toiminta →](https://ailoot.ai/docs/fi/billing/reserve/)

### Esimerkkipyynnöt

#### Ailoot Ultra · OpenAI Chat · SenseNova-V6-Reasoner

Täydellinen minimaalinen Chat-pyyntörunkocurl · oma UTF-8-dokumenttisi; AILOOT\_STREAM=1 tallentaa kaikki SSE-tapahtumatPython · täydellinen JSON tai kaikki SSE-tapahtumatNode.js · täydellinen JSON tai kaikki SSE-tapahtumat

```json
{
  "model": "SenseNova-V6-Reasoner",
  "messages": [
    {
      "role": "user",
      "content": "Hello!"
    }
  ]
}
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 source document}"
export AILOOT_TEXT_FILE AILOOT_STREAM
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

material_path = Path(os.environ['AILOOT_TEXT_FILE'])
if not material_path.is_file():
    raise SystemExit('Choose your actual UTF-8 document')
text = material_path.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('The document must contain text')
stream = os.environ.get('AILOOT_STREAM', '0') == '1'
payload = {'model': 'SenseNova-V6-Reasoner', 'messages': [{'role': 'user', 'content': 'Hello!'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting passages.\n\n' + text
payload['stream'] = stream
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result-body.bin
python3 - <<'PY_RESULT'
import json, os
from pathlib import Path

raw = Path('result-body.bin').read_bytes()
if os.environ.get('AILOOT_STREAM', '0') == '1':
    Path('result.sse').write_bytes(raw)
    print(raw.decode('utf-8'))
else:
    Path('result.json').write_bytes(raw)
    result = json.loads(raw)
    print(json.dumps(result, ensure_ascii=False, indent=2))
    for choice in result.get('choices', []):
        print('Choice', choice.get('index'), json.dumps(choice, ensure_ascii=False))
PY_RESULT
```

```python
import json, os
from pathlib import Path

material_path = Path(os.environ['AILOOT_TEXT_FILE'])
if not material_path.is_file():
    raise SystemExit('Choose your actual UTF-8 document')
text = material_path.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('The document must contain text')
stream = os.environ.get('AILOOT_STREAM', '0') == '1'
payload = {'model': 'SenseNova-V6-Reasoner', 'messages': [{'role': 'user', 'content': 'Hello!'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting passages.\n\n' + text
payload['stream'] = stream
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY')
request = Request('https://api.ailoot.ai/v1/chat/completions', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers={'Authorization': 'Bearer ' + api_key, 'Content-Type': 'application/json'}, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result-body.bin').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result-body.bin').write_bytes(raw)
import json, os
from pathlib import Path

raw = Path('result-body.bin').read_bytes()
if os.environ.get('AILOOT_STREAM', '0') == '1':
    Path('result.sse').write_bytes(raw)
    print(raw.decode('utf-8'))
else:
    Path('result.json').write_bytes(raw)
    result = json.loads(raw)
    print(json.dumps(result, ensure_ascii=False, indent=2))
    for choice in result.get('choices', []):
        print('Choice', choice.get('index'), json.dumps(choice, ensure_ascii=False))
```

```javascript
import { readFileSync, writeFileSync } from 'node:fs';

const apiKey = process.env.AILOOT_API_KEY;
if (!apiKey?.trim()) throw new Error('Set AILOOT_API_KEY');
if (!process.env.AILOOT_TEXT_FILE) throw new Error('Choose your actual UTF-8 document');
const text = readFileSync(process.env.AILOOT_TEXT_FILE, 'utf8');
if (!text.trim()) throw new Error('The document must contain text');
const stream = process.env.AILOOT_STREAM === '1';
const payload = {"model": "SenseNova-V6-Reasoner", "messages": [{"role": "user", "content": "Hello!"}]};
payload.messages[0].content = 'Summarize this material and quote supporting passages.\n\n' + text;
payload.stream = stream;
const response = await fetch('https://api.ailoot.ai/v1/chat/completions', { method: 'POST', headers: { 'Authorization': 'Bearer ' + apiKey, 'Content-Type': 'application/json' }, body: JSON.stringify(payload) });
const raw = Buffer.from(await response.arrayBuffer());
writeFileSync('result-body.bin', raw);
writeFileSync('response-headers.txt', [...response.headers].map(([key, value]) => key + ': ' + value).join('\n'));
if (!response.ok) throw new Error('HTTP ' + response.status + '; original response saved in result-body.bin');
if (stream) {
  writeFileSync('result.sse', raw);
  process.stdout.write(raw);
} else {
  writeFileSync('result.json', raw);
  const result = JSON.parse(raw.toString('utf8'));
  console.log(JSON.stringify(result, null, 2));
  for (const choice of result.choices ?? []) console.log('Choice', choice.index, JSON.stringify(choice));
}
```

### Vastaanota ja tallenna tulokset

#### Ailoot Ultra · OpenAI Chat · SenseNova-V6-Reasoner

json tai SSE

##### Säilytä kaikki valmistuneet tulokset

Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.

Säilytä jokainen vastausvaihtoehto sisältöineen, työkalukutsuineen ja päättelyineen. Kokoa SSE:ssä muutokset vastausvaihtoehdon ja työkalun indeksin mukaan ja säilytä lopullinen päättymissyy sekä käyttötiedot.

##### Jos alkuperäinen vastaus on tarkistettava

Säilytä pyyntöjen/vastausten ID:t ja otsakkeet. Yleistä tekstityön haku-URL:ää ei anneta.

Vastauksen kentät

| Kenttä | Tyyppi |
| --- | --- |
| Kenttä`choices[].index` | Tyyppiinteger |
| Kenttä`choices[].message.content` | Tyyppistring\|null |
| Kenttä`choices[].message.tool_calls` | Tyyppitool\_call\[\] |
| Kenttä`choices[].message.reasoning_content` | Tyyppistring |
| Kenttä`choices[].message.reasoning_details` | Tyyppiobject\|array |
| Kenttä`choices[].finish_reason` | Tyyppistring\|null |
| Kenttä`usage` | Tyyppiobject |

Virheet ja seuraavat vaiheet

| Vastaus | Ehto | Seuraava vaihe |
| --- | --- | --- |
| Vastaus400 · `invalid_request_error` | EhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvo | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä. |

### Aliakset

#### Mallin aliakset

**Ailoot Ultra** [`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=chat), [`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=chat)

#### Menetelmäpolkujen aliakset

Käytä yllä näytettyjä menetelmäpolkuja.

#### Liittyvät kutsujan ID:t

[`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=chat), [`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `SenseNova-V6-Reasoner`

[`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=messages)

Muu /`SenseNova-V6-Reasoner`

Mallin ID

- `SenseNova-V6-Reasoner`
- `sensetime/sensenova-v6-reasoner`

### Aloitus

SenseNova V6 Reasoner soveltaa monimutkaista ajattelua kuva- ja tekstikysymyksiin. Valmistajan malliversio palauttaa päättelyaineistoa ja lopullisen tekstivastauksen matemaattisiin, analyyttisiin ja asiakirjojen ymmärtämistehtäviin. Tulos tarkistetaan alkuperäisestä näytöstä.

Hyväksytyt syötteet

Teksti

Tulokset

json · sse

### Saatavilla Ailootissa · syötteet & menetelmät

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

Syötetyypit

`text`

Tulostyypit

`json`, `sse`

Tulosteen muoto

JSON tai SSE

| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
| --- | --- | --- | --- | --- |
| Kenttä`model` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat SenseNova-V6-Reasoner | Oletus— |
| Kenttä`messages` | Tyyppi`message[]` | VaatimusPakollinen | Arvot & rajat | Oletus— |
| Kenttä`messages[].role` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat user, assistant | Oletus— |
| Kenttä`messages[].content` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat | Oletus— |
| Kenttä`max_tokens` | Tyyppi`integer` | VaatimusPakollinen | Arvot & rajat | Oletus— |
| Kenttä`stream` | Tyyppi`boolean` | VaatimusValinnainen | Arvot & rajat | Oletusfalse |

Syöteaineistojen yhdistelmät

**Teksti** · UTF-8-teksti

`messages[].content-merkkijono`

Menetelmän parametrit ja elinkaari

| Parametri | Sopimus |
| --- | --- |
| Parametri`content_type` | Sopimusapplication/json |
| Parametri`required` | Sopimusmodel, messages, max\_tokens |
| Parametri`optional_controls` | Sopimusstream |
| Parametri`material_types` | Sopimustext |
| Parametri`text_file_material` | SopimusLue varsinainen UTF-8-asiakirja ja sijoita sen teksti ilmoitettuun syöte- tai viestisisällön merkkijonoon. |

Elinkaari: `synchronous_or_streamed`

### Hinnoittelu

Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.

Nopea tila

Ei määritetty Kun nopea tila on valittu

Flex-tila

Ei määritetty Kun flex-tila on valittu

Päättelyn enimmäisteho

Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä

#### Ailoot-hinnat

#### Hinnat asetusten mukaan

| Asetukset | Hinnasto | Veloitus |
| --- | --- | --- |
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Veloitus Syöte · Syötetokenit **$0.00132** / 1K tokenia Tuloste · Tulostokenit **$0.00506** / 1K tokenia Syöte · Välimuistin luku **$0** / 1K tokenia Syöte · Välimuistiin kirjoitus **$0** / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti **—** / 1K tokenia |

Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. [Varauksen ja lopullisen veloituksen toiminta →](https://ailoot.ai/docs/fi/billing/reserve/)

### Esimerkkipyynnöt

#### Ailoot Ultra · Anthropic Messages

Täydellinen minimaalinen JSON-runkocurl · käytä omaa UTF-8-dokumenttiasiPython · tallenna koko tulos

```json
{
  "model": "SenseNova-V6-Reasoner",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'SenseNova-V6-Reasoner', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
```

```python
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'SenseNova-V6-Reasoner', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
```

### Vastaanota ja tallenna tulokset

#### Ailoot Ultra · Anthropic Messages

JSON tai SSE

##### Säilytä kaikki valmistuneet tulokset

Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.

Säilytä kaikki sisältölohkot, päättelyallekirjoitukset ja todelliset työkalukäytön ID:t. Kokoa kaikki SSE-lohkomuutokset; ensimmäinen tekstilohko ei ole koko tulos.

##### Jos alkuperäinen vastaus on tarkistettava

Säilytä pyyntöjen/vastausten ID:t ja otsakkeet. Yleistä tekstityön haku-URL:ää ei anneta.

Vastauksen kentät

| Kenttä | Tyyppi |
| --- | --- |
| Kenttä`id` | Tyyppistring |
| Kenttä`model` | Tyyppistring |
| Kenttä`content[]` | Tyyppitext\|thinking\|tool\_use\|other content block |
| Kenttä`stop_reason` | Tyyppistring\|null |
| Kenttä`usage` | Tyyppiobject |

Virheet ja seuraavat vaiheet

| Vastaus | Ehto | Seuraava vaihe |
| --- | --- | --- |
| Vastaus400 · `invalid_request_error` | EhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvo | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä. |

### Aliakset

#### Mallin aliakset

**Ailoot Ultra** [`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=messages), [`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=messages)

#### Menetelmäpolkujen aliakset

Käytä yllä näytettyjä menetelmäpolkuja.

#### Liittyvät kutsujan ID:t

[`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=messages), [`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=messages)

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `sensetime/sensenova-v6-reasoner`

[`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=chat)

Muu /`sensetime/sensenova-v6-reasoner`

Mallin ID

- `SenseNova-V6-Reasoner`
- `sensetime/sensenova-v6-reasoner`

### Aloitus

SenseNova V6 Reasoner soveltaa monimutkaista ajattelua kuva- ja tekstikysymyksiin. Valmistajan malliversio palauttaa päättelyaineistoa ja lopullisen tekstivastauksen matemaattisiin, analyyttisiin ja asiakirjojen ymmärtämistehtäviin. Tulos tarkistetaan alkuperäisestä näytöstä.

Hyväksytyt syötteet

Teksti

Tulokset

Teksti

### Saatavilla Ailootissa · syötteet & menetelmät

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions`

Syötetyypit

`text`

Tulostyypit

`text`

Tulosteen muoto

json tai SSE

| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
| --- | --- | --- | --- | --- |
| Kenttä`model` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat sensetime/sensenova-v6-reasoner | Oletus— |
| Kenttä`messages` | Tyyppi`message[]` | VaatimusPakollinen | Arvot & rajat Kohteiden vähimmäismäärä: 1 | Oletus— |
| Kenttä`messages[].role` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat Esimerkit: system, user, assistant, tool, function Ehdot: Nämä roolit esitetään nimenomaisesti lähdekoodin yhteensopivuustyypeissä; mallin täsmällinen roolijoukko pysyy mallikohtaisena. Riippuu mallista | Oletus— |
| Kenttä`messages[].content` | Tyyppi`string\|content_part[]\|null` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`messages[].tool_calls` | Tyyppi`tool_call[]` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`messages[].tool_call_id` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Sovelletaan, kun: role=tool; käytä todella palautettua ID:tä | Oletus— |
| Kenttä`messages[].name` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`messages[].reasoning_content` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Sovelletaan, kun: Palauta todella saatu päättely takaisin mallille, kun kyseinen malli käyttää sitä | Oletus— |
| Kenttä`messages[].reasoning_details` | Tyyppi`object\|array` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`max_tokens` | Tyyppi`integer` | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 1 Riippuu mallista | Oletus— |
| Kenttä`max_completion_tokens` | Tyyppi`integer` | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 1 Riippuu mallista | Oletus— |
| Kenttä`stream` | Tyyppi`boolean` | VaatimusValinnainen | Arvot & rajat | Oletusfalse |
| Kenttä`stream_options.include_usage` | Tyyppi`boolean` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`temperature` | Tyyppi`number` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`top_p` | Tyyppi`number` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`stop` | Tyyppi`string\|string[]` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`tools` | Tyyppi`function_tool[]` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`tools[].type` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat function Riippuu mallista | Oletus— |
| Kenttä`tools[].function.name` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat Sovelletaan, kun: funktiotyökalu annettu | Oletus— |
| Kenttä`tools[].function.description` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`tools[].function.parameters` | Tyyppi`JSON_schema` | VaatimusValinnainen | Arvot & rajat | Oletus— |
| Kenttä`tool_choice` | Tyyppi`string\|object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`parallel_tool_calls` | Tyyppi`boolean` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`response_format` | Tyyppi`object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`reasoning_effort` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`reasoning` | Tyyppi`object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`service_tier` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`instructions` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Yhteensopivuuskenttä | Oletus— |
| Kenttä`functions` | Tyyppi`function[]` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`function_call` | Tyyppi`string\|object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`prompt_cache_options` | Tyyppi`object` | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
| Kenttä`modalities` | Tyyppi`string[]` | VaatimusValinnainen | Arvot & rajat text | Oletus— |
| Kenttä`provider` | Tyyppi`object` | VaatimusValinnainen | Arvot & rajat Ehdot: provider.options hylätään tällä Ultran tekstireitillä | Oletus— |
| Kenttä`cache_control.ttl` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat Ehdot: 1h hylätään varsinaisissa kehotevälimuistin kohdissa | Oletus— |

Syöteaineistojen yhdistelmät

**Teksti** · UTF8-teksti

`messages[].content`

Menetelmän parametrit ja elinkaari

| Parametri | Sopimus |
| --- | --- |
| Parametri`content_type` | Sopimusapplication/json |
| Parametri`required` | Sopimusmodel, messages |
| Parametri`material_types` | Sopimustext |
| Parametri`messages` | Sopimusviestitaulukko role/content-rakenteella |
| Parametri`file_material` | Sopimusvarsinainen UTF-8-asiakirja lisätään sellaisenaan tekstinä; tiedoston ID:tä ei päätellä |
| Parametri`optional_controls` | Sopimusstream, temperature, top\_p, stop, max\_tokens, max\_completion\_tokens, reasoning, response\_format, tools, tool\_choice |
| Parametri`control_scope` | Sopimusmallikohtainen; käyttäjän funktiotyökalut eroavat palvelun isännöimistä työkaluista |
| Parametri`output_modalities` | Sopimustext |
| Parametri`hosted_operations` | Sopimusfalse |
| Parametri`multimodal_input_binding` | Sopimusnull |

Elinkaari: `synchronous_or_streamed`

Lähetä mallin täsmällinen ID yhdessä messages-kentän kanssa.

Kontekstin pituus ei ole tuloksen yläraja.

Tekstitiedosto voi antaa tekstiä sellaisenaan; kuva-, ääni- ja tiedosto-objektisyötteet tarvitsevat täsmällisen sidonnan.

### Hinnoittelu

Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.

Nopea tila

Ei määritetty Kun nopea tila on valittu

Flex-tila

Ei määritetty Kun flex-tila on valittu

Päättelyn enimmäisteho

Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä

#### Ailoot-hinnat

#### Hinnat asetusten mukaan

| Asetukset | Hinnasto | Veloitus |
| --- | --- | --- |
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Veloitus Syöte · Syötetokenit **$0.00132** / 1K tokenia Tuloste · Tulostokenit **$0.00506** / 1K tokenia Syöte · Välimuistin luku **$0** / 1K tokenia Syöte · Välimuistiin kirjoitus **$0** / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti **—** / 1K tokenia |

Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. [Varauksen ja lopullisen veloituksen toiminta →](https://ailoot.ai/docs/fi/billing/reserve/)

### Esimerkkipyynnöt

#### Ailoot Ultra · OpenAI Chat

curlPython SDKPython-suoratoisto

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "sensetime/sensenova-v6-reasoner", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
```

```python
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='sensetime/sensenova-v6-reasoner',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
```

```python
from openai import OpenAI
import os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

with client.chat.completions.stream(model='sensetime/sensenova-v6-reasoner',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")
```

### Vastaanota ja tallenna tulokset

#### Ailoot Ultra · OpenAI Chat

json tai SSE

##### Säilytä kaikki valmistuneet tulokset

Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.

Säilytä jokainen vastausvaihtoehto sisältöineen, työkalukutsuineen ja päättelyineen. Kokoa SSE:ssä muutokset vastausvaihtoehdon ja työkalun indeksin mukaan ja säilytä lopullinen päättymissyy sekä käyttötiedot.

##### Jos alkuperäinen vastaus on tarkistettava

Säilytä pyyntöjen/vastausten ID:t ja otsakkeet. Yleistä tekstityön haku-URL:ää ei anneta.

Vastauksen kentät

| Kenttä | Tyyppi |
| --- | --- |
| Kenttä`choices[].index` | Tyyppiinteger |
| Kenttä`choices[].message.content` | Tyyppistring\|null |
| Kenttä`choices[].message.tool_calls` | Tyyppitool\_call\[\] |
| Kenttä`choices[].message.reasoning_content` | Tyyppistring |
| Kenttä`choices[].message.reasoning_details` | Tyyppiobject\|array |
| Kenttä`choices[].finish_reason` | Tyyppistring\|null |
| Kenttä`usage` | Tyyppiobject |

Virheet ja seuraavat vaiheet

| Vastaus | Ehto | Seuraava vaihe |
| --- | --- | --- |
| Vastaus400 · `invalid_request_error` | EhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvo | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä. |

### Aliakset

#### Mallin aliakset

**Ailoot Ultra** [`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=chat), [`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=chat)

#### Menetelmäpolkujen aliakset

Käytä yllä näytettyjä menetelmäpolkuja.

#### Liittyvät kutsujan ID:t

[`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=chat), [`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `sensetime/sensenova-v6-reasoner`

[`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=messages)

Muu /`sensetime/sensenova-v6-reasoner`

Mallin ID

- `SenseNova-V6-Reasoner`
- `sensetime/sensenova-v6-reasoner`

### Aloitus

SenseNova V6 Reasoner soveltaa monimutkaista ajattelua kuva- ja tekstikysymyksiin. Valmistajan malliversio palauttaa päättelyaineistoa ja lopullisen tekstivastauksen matemaattisiin, analyyttisiin ja asiakirjojen ymmärtämistehtäviin. Tulos tarkistetaan alkuperäisestä näytöstä.

Hyväksytyt syötteet

Teksti

Tulokset

json · sse

### Saatavilla Ailootissa · syötteet & menetelmät

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

Syötetyypit

`text`

Tulostyypit

`json`, `sse`

Tulosteen muoto

JSON tai SSE

| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
| --- | --- | --- | --- | --- |
| Kenttä`model` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat sensetime/sensenova-v6-reasoner | Oletus— |
| Kenttä`messages` | Tyyppi`message[]` | VaatimusPakollinen | Arvot & rajat | Oletus— |
| Kenttä`messages[].role` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat user, assistant | Oletus— |
| Kenttä`messages[].content` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat | Oletus— |
| Kenttä`max_tokens` | Tyyppi`integer` | VaatimusPakollinen | Arvot & rajat | Oletus— |
| Kenttä`stream` | Tyyppi`boolean` | VaatimusValinnainen | Arvot & rajat | Oletusfalse |

Syöteaineistojen yhdistelmät

**Teksti** · UTF-8-teksti

`messages[].content-merkkijono`

Menetelmän parametrit ja elinkaari

| Parametri | Sopimus |
| --- | --- |
| Parametri`content_type` | Sopimusapplication/json |
| Parametri`required` | Sopimusmodel, messages, max\_tokens |
| Parametri`optional_controls` | Sopimusstream |
| Parametri`material_types` | Sopimustext |
| Parametri`text_file_material` | SopimusLue varsinainen UTF-8-asiakirja ja sijoita sen teksti ilmoitettuun syöte- tai viestisisällön merkkijonoon. |

Elinkaari: `synchronous_or_streamed`

### Hinnoittelu

Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.

Nopea tila

Ei määritetty Kun nopea tila on valittu

Flex-tila

Ei määritetty Kun flex-tila on valittu

Päättelyn enimmäisteho

Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä

#### Ailoot-hinnat

#### Hinnat asetusten mukaan

| Asetukset | Hinnasto | Veloitus |
| --- | --- | --- |
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Veloitus Syöte · Syötetokenit **$0.00132** / 1K tokenia Tuloste · Tulostokenit **$0.00506** / 1K tokenia Syöte · Välimuistin luku **$0** / 1K tokenia Syöte · Välimuistiin kirjoitus **$0** / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti **—** / 1K tokenia |

Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. [Varauksen ja lopullisen veloituksen toiminta →](https://ailoot.ai/docs/fi/billing/reserve/)

### Esimerkkipyynnöt

#### Ailoot Ultra · Anthropic Messages

Täydellinen minimaalinen JSON-runkocurl · käytä omaa UTF-8-dokumenttiasiPython · tallenna koko tulos

```json
{
  "model": "sensetime/sensenova-v6-reasoner",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'sensetime/sensenova-v6-reasoner', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
```

```python
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'sensetime/sensenova-v6-reasoner', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
```

### Vastaanota ja tallenna tulokset

#### Ailoot Ultra · Anthropic Messages

JSON tai SSE

##### Säilytä kaikki valmistuneet tulokset

Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.

Säilytä kaikki sisältölohkot, päättelyallekirjoitukset ja todelliset työkalukäytön ID:t. Kokoa kaikki SSE-lohkomuutokset; ensimmäinen tekstilohko ei ole koko tulos.

##### Jos alkuperäinen vastaus on tarkistettava

Säilytä pyyntöjen/vastausten ID:t ja otsakkeet. Yleistä tekstityön haku-URL:ää ei anneta.

Vastauksen kentät

| Kenttä | Tyyppi |
| --- | --- |
| Kenttä`id` | Tyyppistring |
| Kenttä`model` | Tyyppistring |
| Kenttä`content[]` | Tyyppitext\|thinking\|tool\_use\|other content block |
| Kenttä`stop_reason` | Tyyppistring\|null |
| Kenttä`usage` | Tyyppiobject |

Virheet ja seuraavat vaiheet

| Vastaus | Ehto | Seuraava vaihe |
| --- | --- | --- |
| Vastaus400 · `invalid_request_error` | EhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvo | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä. |

### Aliakset

#### Mallin aliakset

**Ailoot Ultra** [`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=messages), [`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=messages)

#### Menetelmäpolkujen aliakset

Käytä yllä näytettyjä menetelmäpolkuja.

#### Liittyvät kutsujan ID:t

[`sensetime/sensenova-v6-reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=sensetime%2Fsensenova-v6-reasoner&fmt=messages), [`SenseNova-V6-Reasoner`](https://ailoot.ai/models/fi/#m=sensetime%2Fsensenova-v6-reasoner&route=Ultra&caller=SenseNova-V6-Reasoner&fmt=messages)

FAQ · SenseNova-V6-Reasoner

Mitä syötteitä ja tuloksia on saatavilla?

`POST /v1/chat/completions` · `SenseNova-V6-Reasoner`: `text` → `text` `POST /v1/messages` · `SenseNova-V6-Reasoner`: `text` → `json`, `sse` `POST /v1/chat/completions` · `sensetime/sensenova-v6-reasoner`: `text` → `text` `POST /v1/messages` · `sensetime/sensenova-v6-reasoner`: `text` → `json`, `sse`

Mitä kenttiä pyyntö käyttää?

`POST /v1/chat/completions` · `SenseNova-V6-Reasoner`: `model`, `messages`, `stream`, `modalities`, `provider` `POST /v1/messages` · `SenseNova-V6-Reasoner`: `model`, `messages`, `max_tokens`, `stream` `POST /v1/chat/completions` · `sensetime/sensenova-v6-reasoner`: `model`, `messages`, `stream`, `modalities`, `provider` `POST /v1/messages` · `sensetime/sensenova-v6-reasoner`: `model`, `messages`, `max_tokens`, `stream`

Mitä rajoja sovelletaan?

`POST /v1/chat/completions` · `SenseNova-V6-Reasoner`: `messages.min_items`: `1` `POST /v1/chat/completions` · `sensetime/sensenova-v6-reasoner`: `messages.min_items`: `1`

Yhdistä Ailoot Claude Codeen, OpenCodeen, Hermesiin tai omaan sovellukseesi.

## Yritys ja sen projektisalkku

Yritys ja sen projektisalkku: miljoonia asiakkaita; kuukausittainen myynti miljardiluokassa.

## Osta tokenit alennuksella.

Tilausalennus säännölliseen käyttöön. Kampanjakoodit — jopa 50% tokeniostoista.

Tilaus

Valitse alennushintainen paketti säännöllisiä pyyntöjäsi varten.

Kampanjakoodi jopa 50%

Syötä koodi oston yhteydessä. Hinta lasketaan uudelleen voimassa olevan kampanjan mukaan.

Kulut historiassa

Malli, tokenit ja summa tallennetaan jokaiselle pyynnölle.

[Valitse tilaus](https://ailoot.ai/docs/fi/billing/subscriptions/) · [Katso mallihinnat](https://ailoot.ai/models/fi/)

## Yhdistä API tuotteeseen, jonka myyt.

SaaS, sovellukset ja botit Ailootin palveluehtojen ja lisenssisopimuksen mukaisesti. Pyydä edelleenmyyntiin jälleenmyyjälisenssi.

Kaupallinen sovellus

Lisää tekstin, kuvien, videoiden ja äänen luonti palvelusi maksullisiin ominaisuuksiin.

Jälleenmyyjälisenssi

Lähetä projektikuvaus ja pääsyn toteutustapa. Pyydä kirjalliset käyttö- ja jälleenmyyntiehdot.

Asiakirjat verkkosivustolla

Palveluehdot, lisenssisopimus ja tietojenkäsittelykäytäntö ovat saatavilla ennen yhdistämistä.

[Pyydä jälleenmyyjälisenssi](mailto:support@ailoot.ai) · [Palveluehdot ja lisenssisopimus](https://ailoot.ai/legal/offer?lang=fi)

## Ailoot · Yritys ja sen projektisalkku





Ailoot perustuu kertyneeseen toimintakokemukseen, laajaan asiakaskuntaan, vakaaseen palveluun ja jatkuvaan KPI-seurantaan.





Yritys ja sen projektisalkku: miljoonia asiakkaita; kuukausittainen myynti miljardiluokassa.





Ailoot hyödyntää tätä toimintakokemusta tarjotessaan API-yhteyden tekoälytoimintoihin asiakkaiden tuotteissa, agenteissa, sovelluksissa ja automaatioissa.
