Zadanie
📝 **Pytanie:** **Napisz funkcję** \`chunk_count(total_tokens, chunk_size, cover)\`, która zwraca liczbę fragmentów tworzonych przez dokument przy dzieleniu na przesuwane okno.
Specyfikacja: każdy fragment to tokeny \`chunk_size\`. Każdy fragment nakłada się na poprzedni poprzez tokeny \`nakładające się\` — więc *krok* (efektywne nowe tokeny na fragment) to \`rozmiar_porcji - nakładanie się\`. Pierwsza porcja zaczyna się od 0; nowe porcje są dodawane aż pozycja początkowa przekroczy \`total_tokens\`.
Formuła:
\`\`\`
krok = chunk_size - nakładanie się
liczba = ceil(max(0, total_tokens - nakładanie się) / krok)
\`\`\`
(Przypadek skrajny: jeśli \`total_tokens <= chunk_size\`, to wciąż jest 1 fragment.)
Następnie wydrukuj licznik fragmentów dla trzech konfiguracji dokumentu zawierającego 50 000 tokenów:
\`\`\`
500/50: 111
800/80: 70
1500/200: 39
\`\`\`
3-krotny spadek ze 111 fragmentów do 39 fragmentów → to kompromis w zakresie kosztów osadzania, który starsi programiści wyraźnie przedstawiają przed zaindeksowaniem 1 miliona dokumentów.
📋 Wybierz właściwą odpowiedź.
💡 **Wskazówka:** Jeśli nie jesteś pewien, przeczytaj ponownie powyższą teorię.