შინაარსზე გადასვლა

AIAPI-ის ცოდნის ცენტრი

რა არის API და როგორ მუშაობს?

გაიგე, რა არის API: რით განსხვავდება ინტერფეისისგან, როგორ იგზავნება მოთხოვნა და ბრუნდება პასუხი, როგორ მოწმდება წვდომა და რა არ შეუძლია AI-ის შუამავალ სერვისს.

მომზადებულია AIAPI-ის მიერ ·

API და UI სხვადასხვა მომხმარებელს ემსახურება

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

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

რას შეიცავს მოთხოვნა?

ვებ მოთხოვნას აქვს მეთოდი, მისამართი და სათაურები; ზოგჯერ მას შიგთავსიც ახლავს. მეთოდი მიუთითებს მოქმედებაზე, სათაურები კი დამატებით ინფორმაციას გადასცემს, მაგალითად, შიგთავსის ფორმატს. წარმოვიდგინოთ სასწავლო მოთხოვნა: POST /example/stock-check და სათაური Content-Type: application/json. ეს გამოგონილი მაგალითია და არა AIAPI-ის მოქმედი მისამართი.

მოთხოვნის შიგთავსის მაგალითი: {"item_id":"notebook","quantity":2}

ამ მაგალითში item_id საქონლის იდენტიფიკატორია, quantity კი მოთხოვნილი რაოდენობა. ველების სახელებს, დასაშვებ მნიშვნელობებსა და აუცილებელ მონაცემებს კონკრეტული API-ის აღწერა განსაზღვრავს. გამართული JSON საკმარისი არ არის: თუ აუცილებელი ველი აკლია ან მოქმედება მხარდაჭერილი არ არის, სერვერმა მოთხოვნა შეიძლება უარყოს.

როგორ წავიკითხოთ პასუხი

სერვერი აბრუნებს სტატუსს, სათაურებს და, საჭიროების შემთხვევაში, შიგთავსს. ჩვენს სასწავლო მაგალითში პასუხს შეიძლება ჰქონდეს სტატუსი 200 და ქვემოთ მოცემული JSON. რაოდენობა რიცხვით არის გამოხატული, true კი ლოგიკური მნიშვნელობაა და არა ბრჭყალებში ჩასმული სიტყვა.

პასუხის შიგთავსის მაგალითი: {"item_id":"notebook","available":true,"quantity":2}

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

ვინაობის დადგენა და უფლების შემოწმება

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

  • გამოიყენე HTTPS. სერვერის საიდუმლო API-ის გასაღები შეინახე დაცულ სერვერულ საცავში და არა ბრაუზერის კოდში, საჯარო რეპოზიტორიაში ან ბმულში.
  • მიანიჭე მხოლოდ საჭირო უფლებები და დააწესე გამოყენების ლიმიტები. გამჟღავნებული გასაღები გააუქმე და შეცვალე; ხილული ასლის წაშლა საკმარისი არ არის.
  • გასაღებები და არასაჭირო პირადი ინფორმაცია არ ჩასვა მოდელისთვის გაგზავნილ ტექსტში, ჟურნალებში ან მხარდაჭერისთვის გაგზავნილ შეტყობინებებში.

რას აკეთებს AI-ის შუამავალი სერვისი და რას — არა

AI-ის შუამავალი სერვისი, ანუ gateway, შენს აპლიკაციასა და მოდელის მომწოდებელს შორის დგას. კონფიგურაციის მიხედვით, მას შეუძლია მოთხოვნების გადამისამართება, წვდომის შემოწმება, გამოყენების აღრიცხვა და მხარდაჭერილი ფორმატების გარდაქმნა. AIAPI / აი აპი ასეთი შუამავალი სერვისია და არა მოდელი, რომელიც პასუხს ქმნის.

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

პირველწყაროები და დამატებითი ინფორმაცია

ზემოთ მოცემული განმარტებები მომზადებულია AIAPI-ის მიერ. პირველწყაროები აღწერს შესაბამის ტექნიკურ ცნებებს; მათი მითითება პარტნიორობას არ ნიშნავს.

თუ განმარტება გაუგებარია ან შეცდომა შენიშნე, მოგვწერე: [email protected].