OpenAI
ეს გვერდი მანქანური თარგმანის მეშვეობით ითარგმნა. სტატიის ინგლისური დედნის ნახვა.

ტოკენების გაგება და დათვლა

გაიგეთ, როგორ მოქმედებს შეყვანის, გამოტანის, კეშირებული და მსჯელობის ტოკენები API-ის გამოყენებაზე, მოდელის ლიმიტებსა და ხარჯებზე.

განახლებულია: 5 days ago

მიმოხილვა

ტოკენები არის ერთეულები, რომლებსაც OpenAI-ის მოდელები ტექსტის დასამუშავებლად იყენებს. ტოკენი შეიძლება წარმოადგენდეს სიმბოლოს, სიტყვის ნაწილს, მთელ სიტყვას ან სასვენ ნიშანს. ტექსტის ტოკენებად დაყოფაზე გამოტოვებებიც მოქმედებს.

ტოკენების რაოდენობა სიტყვების რაოდენობას არ უდრის. ერთსა და იმავე ტექსტში ტოკენების რაოდენობა შეიძლება განსხვავდებოდეს მოდელის, მისი კოდირებისა და ენის მიხედვით.

როგორ გარდაიქმნება ტექსტი ტოკენებად

როდესაც მოდელს ტექსტს უგზავნით:

  1. ტექსტი ტოკენებად იყოფა.

  2. მოდელი ამ ტოკენებს ამუშავებს.

  3. მოდელი გამოტანის ტოკენებს ქმნის. ისინი შეიძლება მოიცავდეს მიღებულ ტექსტს და, მსჯელობის მოდელების შემთხვევაში, მსჯელობის შიდა ტოკენებსაც, რომლებიც პასუხის ტექსტში არ ჩანს.

ინგლისური ტექსტის მიახლოებითი შეფასება

ინგლისური ტექსტის მოცულობის შეფასებაში ეს მიახლოებითი მაჩვენებლები დაგეხმარებათ:

  • 1 ტოკენი დაახლოებით 4 სიმბოლოა.

  • 1 ტოკენი დაახლოებით სიტყვის სამი მეოთხედია.

  • 100 ტოკენი დაახლოებით 75 სიტყვაა.

ეს მიახლოებითი მაჩვენებლებია და არა ზუსტი რაოდენობები. წინადადებებისა და აბზაცების სიგრძე განსხვავდება, სხვა ენებში კი სიმბოლოების, სიტყვებისა და ტოკენების თანაფარდობაც შეიძლება სხვაგვარი იყოს.

გამოტოვებებისა და ასოთა რეგისტრის გათვალისწინება

სიტყვა შეიძლება სხვადასხვა ტოკენად დაიყოს მისი დაწერილობის, ასოთა რეგისტრისა და გარშემო არსებული ტექსტის მიხედვით.

მაგალითად, red, Red და red იდენტური ტექსტი არ არის: ბოლო მაგალითს წინ გამოტოვება აქვს. კოდირებამ ისინი შეიძლება სხვადასხვაგვარად წარმოადგინოს.

ტოკენების ID-ებიც კოდირებაზეა დამოკიდებული. ნუ ჩათვლით, რომ ტოკენის მაგალითში მოცემული ID ყველა მოდელს მიესადაგება.

შეყვანისა და გამოტანის ტოკენების განსხვავება

კატეგორიარას აღწერს
შეყვანის ტოკენებიმოთხოვნაში მოდელისთვის მიწოდებული ტოკენები. მათ მოთხოვნის ტოკენებსაც უწოდებენ.
გამოტანის ტოკენებიმოდელის მიერ გენერირებული ტოკენები. Chat Completions მათ დასრულების ტოკენებს უწოდებს.
კეშირებული შეყვანის ტოკენებიპრომპტის კეშირების მეშვეობით ხელახლა გამოყენებული შეყვანის ტოკენები. მათი ფასი შეიძლება განსხვავდებოდეს არაკეშირებული შეყვანის ტოკენების ფასისგან.
მსჯელობის ტოკენებიტოკენები, რომლებსაც მსჯელობის მოდელი ხილული პასუხის შექმნამდე შიდა დამუშავებისთვის იყენებს.

მსჯელობის ტოკენები პასუხის ტექსტში არ ჩანს, თუმცა გამოტანის გამოყენებაში ითვლება და მათი საფასური გამოტანის ტოკენების მსგავსად ირიცხება.

ამიტომ მოკლე ხილულმა პასუხმა შეიძლება ეკრანზე ნაჩვენებ ტექსტზე მეტი ტოკენი გამოიყენოს.

მოთხოვნის გაგზავნამდე ტოკენების დათვლა

ჩვეულებრივი ტექსტის დათვლა

გამოიყენეთ ტოკენიზატორი, რათა ნახოთ, როგორ იყოფა ტექსტი ტოკენებად.

ჩვეულებრივი ტექსტის პროგრამულად ტოკენებად დასაყოფად გამოიყენეთ tiktoken. აირჩიეთ სამიზნე მოდელის შესაბამისი კოდირება, მაგალითად tiktoken.encoding_for_model(model)-ის მეშვეობით.

ჩვეულებრივ ტექსტში დათვლილი ტოკენები API-ის მოთხოვნის ყველა ტოკენს ყოველთვის არ მოიცავს. შეტყობინებების სტრუქტურამ, ხელსაწყოებმა, სქემებმა, სურათებმა და ფაილებმა შეიძლება შეყვანის ტოკენების სრულ რაოდენობაზე იმოქმედოს.

Responses-ის სრული შეყვანის დათვლა

Responses API-ის სრული შეყვანისთვის გამოიყენეთ შეყვანის ტოკენების დასათვლელი API.

ის იღებს Responses-ის შეყვანის ფორმატებს, მათ შორის შეტყობინებებს, სურათებს, ფაილებს, ხელსაწყოებსა და საუბრებს. დათვლაში შედის მოთხოვნის სტრუქტურისთვის გამოყენებული ფორმატირების ტოკენები, მაგალითად შეტყობინების როლები და საზღვრები.

შეყვანის ტოკენების რაოდენობით ვერ განისაზღვრება, რამდენ გამოტანის ტოკენს შექმნის მოდელი.

ტოკენების ფაქტობრივი გამოყენების შემოწმება

მოთხოვნის გაგზავნის შემდეგ შეამოწმეთ მისი გამოყენების ინფორმაცია. ველების სახელები საბოლოო წერტილის მიხედვით განსხვავდება:

  • Chat Completions აჩვენებს prompt_tokens, completion_tokens და total_tokens ველებს.

  • Responses აჩვენებს input_tokens, output_tokens და total_tokens ველებს.

დროთა განმავლობაში აქტივობის ნახვა ასევე შეგიძლიათ გამოყენების მართვის პანელზე. ინსტრუქციებისთვის, მათ შორის ნაკადური გამოყენების შესახებ, იხილეთ: API-ის გამოყენებისა და ხარჯების მიმოხილვა.

მოდელის ლიმიტების დაცვა

კონტექსტური ფანჯრისა და გამოტანის მაქსიმუმის გასაგებად გაეცანით თქვენი მოდელის დოკუმენტაციას. ეს ლიმიტები მოდელების მიხედვით შეიძლება განსხვავდებოდეს.

კონტექსტური ფანჯარა ზღუდავს ტოკენების რაოდენობას, რომლებთანაც მოდელს ერთ მოთხოვნაში მუშაობა შეუძლია. მოდელებს გამოტანის ლიმიტიც აქვთ. მსჯელობის მოდელების გამოყენებისას ადგილი გაითვალისწინეთ როგორც მსჯელობის ტოკენებისთვის, ისე ხილული პასუხისთვის.

თუ შეყვანილი მონაცემები მეტისმეტად დიდია, შეგიძლიათ:

  • შეამოკლოთ ან სხვაგვარად ჩამოაყალიბოთ მოთხოვნა.

  • წაშალოთ არასაჭირო ან განმეორებითი კონტექსტი.

  • დიდი მოცულობის შეყვანილი მონაცემები მცირე ნაწილებად დაყოთ.

  • გაგზავნამდე შეაჯამოთ ან წინასწარ დაამუშაოთ ტექსტი.

გამოიყენეთ გამოტანის ტოკენების პარამეტრი, რომელსაც თქვენი საბოლოო წერტილი და მოდელი უჭერს მხარს. Chat Completions იყენებს max_completion_tokens-ს, ხოლო Responses — max_output_tokens-ს.

მოთხოვნის ზომის ეს ლიმიტები განცალკევებულია API-ის სიხშირის ლიმიტებისა და გამოყენების ან ხარჯვის ყოველთვიური ლიმიტებისგან. გაეცანით გამოყენებული მოდელის დოკუმენტაციას.

ტოკენების ფასების გაგება

ტოკენებზე დაფუძნებული API-ის ფასების შემთხვევაში ტარიფი მოდელსა და ტოკენის კატეგორიაზეა დამოკიდებული. შეყვანის, კეშირებული შეყვანისა და გამოტანის ტოკენებს შეიძლება განსხვავებული ფასები ჰქონდეს. API-ის სხვა შესაძლებლობებისთვის შეიძლება ანგარიშსწორების განსხვავებული ერთეულები გამოიყენებოდეს.

მიმდინარე ტარიფებისთვის იხილეთ API-ის ფასების გვერდი.

მოდელების შედარებისას გაითვალისწინეთ დავალების შესასრულებლად საჭირო ტოკენების სრული რაოდენობა და ხარჯი. მილიონ ტოკენზე დაბალი ფასი ყოველთვის ნაკლებ მთლიან ხარჯს არ ნიშნავს: მოდელებმა ერთი და იგივე ტექსტი შეიძლება სხვადასხვაგვარად დაყონ ტოკენებად და განსხვავებული მოცულობის გამოტანა ან მსჯელობა შექმნან.

მხოლოდ ხილული პასუხის სიგრძის შედარების ნაცვლად, შეამოწმეთ ტიპური დავალებები.

რამდენიმე დასრულებული პასუხის გათვალისწინება

როდესაც საბოლოო წერტილი და მოდელი რამდენიმე დასრულებული პასუხის გენერირებას უჭერს მხარს, დამატებითი პასუხებიც იყენებს ტოკენებს.

Chat Completions-ში n-ის 1-ზე მეტი მნიშვნელობა რამდენიმე ვარიანტს ქმნის. საფასური ყველა ამ ვარიანტში გენერირებული ტოკენებისთვის გერიცხებათ.

მოძველებულ Completions API-ში best_of-ს შეუძლია შექმნას კანდიდატები, რომლებიც ყველა არ ბრუნდება. მაგალითად, best_of = 3-ს შეუძლია კანდიდატებში ჯამურად მაქსიმუმ 3 × max_tokens დასრულების ტოკენი შექმნას.

ეს პარამეტრები კონკრეტულ საბოლოო წერტილზეა დამოკიდებული. ნუ ჩათვლით, რომ სხვა API ან მოდელი n-ს ან best_of-ს უჭერს მხარს.

სასარგებლო იყო ეს სტატია?