DuckDB-NSQL-7B: ხელოვნური ინტელექტით SQL შეკითხვების გენერირება მონაცემთა ანალიზისთვის
დეველოპერები და ანალიტიკოსები სულ უფრო მეტად აფასებენ ხელოვნური ინტელექტის (AI) პოტენციალს მონაცემთა ანალიზის გასამარტივებლად. ტრადიციული SQL შეკითხვების შექმნა მოითხოვდა სპეციალიზებულ ცოდნას, თუმცა AI-ზე დაფუძნებული გადაწყვეტილებები, როგორიცაა MotherDuck-ისა და Numbers Station-ის DuckDB-NSQL-7B მოდელი, ამ პროცესს არა-დეველოპერებისთვისაც ხელმისაწვდომს ხდის. სტატია დეტალურად აღწერს, თუ როგორ შეუძლია ამ LLM-ს ბუნებრივი ენის გამოყენებით SQL ოპერატორების გენერირება, Hugging Face მონაცემთა ნაკრებებთა
დეველოპერები სულ უფრო მეტად აცნობიერებენ ამ აპლიკაციების პოტენციურ სარგებელს, განსაკუთრებით ძირითადი ამოცანების გაუმჯობესებაში, როგორიცაა სკრიპტების წერა, ვებ დეველოპმენტი და ახლა უკვე მონაცემებთან ურთიერთქმედება. ისტორიულად, მონაცემთა ანალიზისთვის გამჭრიახი SQL შეკითხვების შექმნა, ძირითადად, მონაცემთა ანალიტიკოსების, SQL დეველოპერების, მონაცემთა ინჟინრების ან მასთან დაკავშირებული სფეროების პროფესიონალების პრეროგატივა იყო, რომლებიც SQL დიალექტის სინტაქსის ნიუანსებში ერკვეოდნენ. თუმცა, ხელოვნური ინტელექტის (AI) გადაწყვეტილებების გაჩენასთან ერთად, ლანდშაფტი იცვლება. ეს მოწინავე მოდელები გვთავაზობენ მონაცემებთან ურთიერთქმედების ახალ გზებს, რაც პოტენციურად ამარტივებს პროცესებს და უფრო ეფექტურად და სიღრმისეულად ავლენს ინსაითებს. რა მოხდება, თუ თქვენ შეძლებთ თქვენი მონაცემთა ნაკრებიდან საინტერესო ინსაითების მოპოვებას კოდირებაში ღრმად ჩაძირვის გარეშე? ღირებული ინფორმაციის მოსაპოვებლად საჭირო იყო სპეციალიზებული SELECT ოპერატორის შექმნა, იმის გათვალისწინებით, თუ რომელი სვეტები უნდა გამოჩნდეს, წყარო ცხრილი, შერჩეული სტრიქონების გაფილტვრის პირობები, აგრეგაციის მეთოდები და დალაგების პრეფერენციები. ეს ტრადიციული მიდგომა მოიცავს ბრძანებების თანმიმდევრობას: SELECT, FROM, WHERE, GROUP და ORDER. მაგრამ რა მოხდება, თუ თქვენ არ ხართ გამოცდილი დეველოპერი და მაინც გსურთ თქვენი მონაცემების პოტენციალის გამოყენება? ასეთ შემთხვევებში აუცილებელი ხდება SQL სპეციალისტების დახმარების მოძიება, რაც ხაზს უსვამს ხელმისაწვდომობისა და გამოყენებადობის ხარვეზს. სწორედ აქ შემოდის AI და LLM ტექნოლოგიაში გარღვევის მომტანი მიღწევები ამ ხარვეზის აღმოსაფხვრელად. წარმოიდგინეთ, რომ მარტივად ესაუბრებით თქვენს მონაცემებს, უბრალოდ აცხადებთ თქვენს საინფორმაციო საჭიროებებს მარტივ ენაზე და მოდელი თქვენს მოთხოვნას შეკითხვად თარგმნის. ბოლო თვეებში მნიშვნელოვანი წინსვლა იქნა მიღწეული ამ სფეროში.
MotherDuck-მა და Numbers Station-მა წარმოადგინეს უახლესი ინოვაცია: DuckDB-NSQL-7B, უახლესი LLM, რომელიც სპეციალურად DuckDB SQL-ისთვისაა შექმნილი. რა არის ამ მოდელის მისია? მომხმარებლებისთვის მონაცემებიდან ინსაითების ძალისხმევის გარეშე მოპოვების შესაძლებლობის მიცემა. თავდაპირველად, DuckDB-NSQL-7B Meta-ს ორიგინალი Llama-2-7b მოდელიდან დახვეწილ იქნა ზოგადი SQL შეკითხვების ამსახველი ფართო მონაცემთა ნაკრების გამოყენებით, შემდეგ კი შემდგომი დახვეწა განიცადა DuckDB ტექსტი-SQL-ზე წყვილებთან ერთად. აღსანიშნავია, რომ მისი შესაძლებლობები სცდება SELECT ოპერატორების შექმნას; მას შეუძლია DuckDB SQL ოპერატორების ფართო სპექტრის გენერირება, ოფიციალური დოკუმენტაციისა და გაფართოებების ჩათვლით, რაც მას მრავალმხრივ ინსტრუმენტად აქცევს მონაცემთა კვლევისა და ანალიზისთვის. ამ სტატიაში ჩვენ ვისწავლით, თუ როგორ უნდა ვიმუშაოთ text2sql ამოცანებთან DuckDB-NSQL-7B მოდელის, Hugging Face მონაცემთა ნაკრების დამთვალიერებლის API-ს (parquet ფაილებისთვის) და DuckDB-ს (მონაცემთა მოსაპოვებლად) გამოყენებით.
**text2sql სამუშაო პროცესი (flow)**
llama.cpp-ის მთავარი მიზანია LLM ინფერენციის ჩართვა მინიმალური კონფიგურაციით და უახლესი შესრულებით აპარატურის ფართო სპექტრზე – როგორც ლოკალურად, ასევე ღრუბელში. ჩვენ გამოვიყენებთ ამ მიდგომას. მონაცემები გადამწყვეტი კომპონენტია ნებისმიერ მანქანური სწავლების წამოწყებაში. Hugging Face არის ღირებული რესურსი, რომელიც გთავაზობთ 120,000-ზე მეტ თავისუფალ და ღია მონაცემთა ნაკრებზე წვდომას, სხვადასხვა ფორმატში, მათ შორის CSV, Parquet, JSON, აუდიო და გამოსახულების ფაილებს. Hugging Face-ის მიერ ჰოსტირებული თითოეული მონაცემთა ნაკრები აღჭურვილია ყოვლისმომცველი მონაცემთა ნაკრების დამთვალიერებლით. ეს დამთვალიერებელი მომხმარებლებს აწვდის აუცილებელ ფუნქციონალობებს, როგორიცაა სტატისტიკური ინსაითები, მონაცემთა ზომის შეფასება, სრულტექსტური ძიების შესაძლებლობები და ეფექტური ფილტრაციის ოფციები. ეს ფუნქციებით მდიდარი ინტერფეისი მომხმარებლებს საშუალებას აძლევს მარტივად შეისწავლონ და შეაფასონ მონაცემთა ნაკრებები, რაც ხელს უწყობს ინფორმირებული გადაწყვეტილების მიღებას მანქანური სწავლების სამუშაო პროცესის განმავლობაში. ამ დემონსტრაციისთვის ჩვენ გამოვიყენებთ world-cities-geo მონაცემთა ნაკრებს.
**მონაცემთა ნაკრების დამთვალიერებელი world-cities-geo მონაცემთა ნაკრებისთვის**
კულისებს მიღმა, Hub-ში არსებული თითოეული მონაცემთა ნაკრები დამუშავებულია Hugging Face მონაცემთა ნაკრების დამთვალიერებლის API-ის მიერ, რომელიც იღებს სასარგებლო ინფორმაციას და აწვდის ფუნქციონალობებს, როგორიცაა: ამ დემონსტრაციაში ჩვენ გამოვიყენებთ ბოლო ფუნქციონალობას – ავტომატურად კონვერტირებულ Parquet ფაილებს. პირველ რიგში, გადმოწერეთ DuckDB-NSQL-7B-v0.1-ის კვანტიზებული მოდელების ვერსია.
**მოდელის ჩამოტვირთვა**
ალტერნატიულად, შეგიძლიათ შეასრულოთ შემდეგი კოდი: [CODE BLOCK]
ახლა, დავაყენოთ საჭირო დამოკიდებულებები: [CODE BLOCK]
text-to-SQL მოდელისთვის ჩვენ გამოვიყენებთ მოთხოვნას შემდეგი სტრუქტურით: [CODE BLOCK]
ამრიგად, ჩვენ უნდა მივაწოდოთ მოდელს ინფორმაცია Hugging Face მონაცემთა ნაკრების სქემის შესახებ. ამისათვის, ჩვენ მოვიპოვებთ პირველ Parquet ფაილს jamescalam/world-cities-geo მონაცემთა ნაკრებისთვის: [CODE BLOCK]
Parquet ფაილი განთავსებულია Hugging Face დამთვალიერებელში refs/convert/parquet რევიზიის ქვეშ: (ვიზუალი)
CREATE სქემის DDL ასეთია: [CODE BLOCK]
და, როგორც ხედავთ, ის ემთხვევა მონაცემთა ნაკრების დამთვალიერებლის სვეტებს: (ვიზუალი)
თუ მომხმარებელს სურს ალბანეთის ქალაქების გაგება, მოთხოვნა ასე გამოიყურება: [CODE BLOCK]
ასე რომ, გაფართოებული მოთხოვნა, რომელიც გაიგზავნება LLM-ისთვის, ასე გამოიყურება: [CODE BLOCK]
გამომავალი SQL ბრძანება მიუთითებს მონაცემთა ცხრილზე, მაგრამ რადგან ჩვენ არ გვაქვს რეალური ცხრილი, არამედ მხოლოდ მითითება Parquet ფაილზე, ჩვენ შევცვლით მონაცემთა ყველა შემთხვევას first_parquet_url-ით: [CODE BLOCK]
და საბოლოო გამომავალი იქნება: [CODE BLOCK]
და აი შედეგები (100 სტრიქონი): (ვიზუალი)
შესრულების შედეგი (100 სტრიქონი) (ვიზუალი)
შევადაროთ ეს შედეგი მონაცემთა ნაკრების დამთვალიერებელში „ძიების ფუნქციის“ გამოყენებით ალბანეთის ქვეყნისთვის – ის იგივე უნდა იყოს: (ვიზუალი)
ძიების შედეგი ალბანეთის ქვეყნისთვის (ვიზუალი)
თქვენ ასევე შეგიძლიათ მიიღოთ იგივე შედეგი.
თეგები:
#ხელოვნური ინტელექტი
#llm
#მანქანური სწავლება
#მონაცემთა ანალიზი
#hugging face
#sql
#duckdb
#text-to-sql
წყარო: huggingface.co
AI-ით გადამუშავებული
მსგავსი სტატიები
ტექნოლოგიები
Honor Magic V6: უთხელესი დასაკეცი ტელეფონი? პირველი შთაბეჭდილებები
ტექნოლოგიები
Honor Magic V6: ყველაზე თხელი დასაკეცი სმარტფონი და მისი შთამბეჭდავი შესაძლებლობები
ტექნოლოგიები