يوفر تنفيذ بنية بيانات حديثة طريقة قابلة للتطوير لدمج البيانات من مصادر مختلفة. من خلال تنظيم البيانات حسب مجالات الأعمال بدلاً من البنية التحتية ، يمكن لكل مجال اختيار الأدوات التي تناسب احتياجاته. يمكن للمؤسسات تعظيم قيمة بنية البيانات الحديثة الخاصة بها من خلال حلول الذكاء الاصطناعي التوليفية مع الابتكار المستمر.
تسمح قدرات اللغة الطبيعية للمستخدمين غير التقنيين بالاستعلام عن البيانات من خلال المحادثة باللغة الإنجليزية بدلاً من SQL المعقدة. ومع ذلك ، فإن تحقيق الفوائد الكاملة يتطلب التغلب على بعض التحديات. يجب أن تحدد نماذج اللغة والذكاء الاصطناعي مصادر البيانات المناسبة ، وتوليد استعلامات SQL فعالة ، وإنتاج استجابات متماسكة مع نتائج مضمنة على نطاق واسع. يحتاجون أيضًا إلى واجهة مستخدم لأسئلة اللغة الطبيعية.
بشكل عام ، يعد تنفيذ بنية البيانات الحديثة وتقنيات الذكاء الاصطناعي التوليدية باستخدام AWS نهجًا واعدًا لاستخلاص الأفكار الرئيسية ونشرها من البيانات المتنوعة والشاملة على نطاق المؤسسة. أحدث عرض للذكاء الاصطناعي التوليدي من AWS هو أمازون بيدروك، وهي خدمة مُدارة بالكامل وأسهل طريقة لبناء وتوسيع تطبيقات الذكاء الاصطناعي باستخدام النماذج الأساسية. تقدم AWS أيضًا نماذج أساسية من خلال أمازون سيج ميكر جومب ستارت as الأمازون SageMaker نقاط النهاية. إن الجمع بين نماذج اللغات الكبيرة (LLMs) ، بما في ذلك سهولة التكامل التي تقدمها Amazon Bedrock ، والبنية التحتية للبيانات القابلة للتطوير والموجهة نحو المجال ، تضع هذا كطريقة ذكية للاستفادة من المعلومات الوفيرة الموجودة في قواعد بيانات التحليلات المختلفة وبحيرات البيانات.
في المنشور ، نعرض سيناريو قامت فيه الشركة بنشر بنية بيانات حديثة مع وجود بيانات في قواعد بيانات متعددة وواجهات برمجة تطبيقات مثل البيانات القانونية على خدمة تخزين أمازون البسيطة (Amazon S3) ، تم تشغيل الموارد البشرية خدمة قاعدة بيانات الأمازون (Amazon RDS) والمبيعات والتسويق على الأمازون الأحمر، بيانات السوق المالية على حل مستودع بيانات تابع لجهة خارجية في ندفة الثلج، وبيانات المنتج كواجهة برمجة تطبيقات. يهدف هذا التنفيذ إلى تعزيز إنتاجية تحليلات أعمال المؤسسة وأصحاب المنتجات وخبراء مجال الأعمال. تم تحقيق كل هذا من خلال استخدام الذكاء الاصطناعي التوليدي في بنية شبكة المجال هذه ، والتي تمكن الشركة من تحقيق أهداف أعمالها بشكل أكثر كفاءة. يحتوي هذا الحل على خيار تضمين LLMs من JumpStart كنقطة نهاية SageMaker بالإضافة إلى نماذج الجهات الخارجية. نحن نوفر لمستخدمي المؤسسة وسيلة لطرح الأسئلة القائمة على الحقائق دون أن يكون لديهم معرفة أساسية بقنوات البيانات ، وبالتالي نستخلص تعقيدات كتابة استعلامات SQL البسيطة إلى المعقدة.
حل نظرة عامة
تطبق بنية البيانات الحديثة على AWS الذكاء الاصطناعي ومعالجة اللغة الطبيعية للاستعلام عن قواعد بيانات تحليلات متعددة. باستخدام خدمات مثل Amazon Redshift و Amazon RDS و Snowflake ، أمازون أثيناو غراء AWS، فهو ينشئ حلاً قابلاً للتوسع لدمج البيانات من مصادر مختلفة. استخدام لانجشين، مكتبة قوية للعمل مع LLMs ، بما في ذلك نماذج الأساس من Amazon Bedrock و JumpStart في أمازون ساجميكر ستوديو دفاتر الملاحظات ، وهو نظام تم إنشاؤه حيث يمكن للمستخدمين طرح أسئلة العمل باللغة الإنجليزية الطبيعية وتلقي إجابات ببيانات مستمدة من قواعد البيانات ذات الصلة.
يوضح الرسم البياني التالي العمارة.
تستخدم البنية الهجينة قواعد بيانات متعددة و LLM ، مع نماذج أساسية من Amazon Bedrock و JumpStart لتحديد مصدر البيانات ، وإنشاء SQL ، وإنشاء النصوص مع النتائج.
يوضح الرسم التخطيطي التالي خطوات سير العمل المحددة لحلنا.
الخطوات كالتالي:
- يقدم مستخدم الأعمال موجه سؤال باللغة الإنجليزية.
- من المقرر أن يتم تشغيل متتبع ارتباطات AWS Glue على فترات متكررة لاستخراج البيانات الوصفية من قواعد البيانات وإنشاء تعريفات الجدول في كتالوج بيانات AWS Glue. يتم إدخال كتالوج البيانات في سلسلة التسلسل 1 (انظر الرسم التخطيطي السابق).
- تُستخدم أداة LangChain ، وهي أداة للعمل مع LLMs والمطالبات ، في أجهزة كمبيوتر Studio المحمولة. يتطلب LangChain تعريف LLM. كجزء من التسلسل التسلسلي 1 ، يتم تمرير البيانات الوصفية للموجه وكتالوج البيانات إلى LLM ، مستضافة على نقطة نهاية SageMaker ، لتحديد قاعدة البيانات والجدول ذي الصلة باستخدام LangChain.
- يتم تمرير قاعدة البيانات والجدول الفوري والمُعرف إلى تسلسل السلسلة 2.
- ينشئ LangChain اتصالاً بقاعدة البيانات ويقوم بتشغيل استعلام SQL للحصول على النتائج.
- يتم تمرير النتائج إلى LLM لتوليد إجابة باللغة الإنجليزية مع البيانات.
- يتلقى المستخدم إجابة باللغة الإنجليزية على موجههم ، والاستعلام عن البيانات من قواعد البيانات المختلفة.
تشرح الأقسام التالية بعض الخطوات الأساسية مع التعليمات البرمجية المرتبطة. للتعمق أكثر في الحل والكود لجميع الخطوات الموضحة هنا ، راجع جيثب ريبو. يوضح الرسم البياني التالي تسلسل الخطوات المتبعة:
المتطلبات الأساسية المسبقة
يمكنك استخدام أي قواعد بيانات متوافقة مع SQLAlchemy لتوليد استجابات من LLMs و LangChain. ومع ذلك ، يجب أن يكون لقواعد البيانات هذه بياناتها الوصفية مسجلة في AWS Glue Data Catalog. بالإضافة إلى ذلك ، ستحتاج إلى الوصول إلى LLM من خلال مفاتيح JumpStart أو API.
الاتصال بقواعد البيانات باستخدام SQLAlchemy
يستخدم LangChain SQLAlchemy للاتصال بقواعد بيانات SQL. نقوم بتهيئة وظيفة LangChain SQLDatabase عن طريق إنشاء محرك وإنشاء اتصال لكل مصدر بيانات. فيما يلي عينة من كيفية الاتصال بملف إصدار متوافق مع Amazon Aurora MySQL قاعدة بيانات بدون خادم وتشمل فقط جدول الموظفين:
بعد ذلك ، نقوم ببناء المطالبات التي يستخدمها التسلسل التسلسلي 1 لتحديد قاعدة البيانات واسم الجدول بناءً على سؤال المستخدم.
إنشاء قوالب موجه ديناميكية
نستخدم AWS Glue Data Catalog ، المصمم لتخزين وإدارة معلومات البيانات الوصفية ، لتحديد مصدر البيانات لاستعلام المستخدم وبناء مطالبات لتسلسل السلسلة 1 ، كما هو مفصل في الخطوات التالية:
- نقوم ببناء كتالوج البيانات من خلال الزحف عبر البيانات الوصفية لمصادر البيانات المتعددة باستخدام اتصال JDBC المستخدمة في المظاهرة.
- باستخدام مكتبة Boto3 ، نقوم ببناء عرض موحد لكتالوج البيانات من مصادر بيانات متعددة. فيما يلي نموذج عن كيفية الحصول على البيانات الوصفية لجدول الموظفين من كتالوج البيانات لقاعدة بيانات Aurora MySQL:
يحتوي كتالوج البيانات المدمج على تفاصيل حول مصدر البيانات ، مثل المخطط وأسماء الجدول وأسماء الأعمدة. فيما يلي عينة من مخرجات كتالوج البيانات الموحد:
- نقوم بتمرير كتالوج البيانات الموحد إلى قالب المطالبة وتحديد المطالبات المستخدمة من قبل LangChain:
تسلسل السلسلة 1: الكشف عن البيانات الوصفية المصدر لاستعلام المستخدم باستخدام LangChain و LLM
نقوم بتمرير قالب المطالبة الذي تم إنشاؤه في الخطوة السابقة إلى الموجه ، جنبًا إلى جنب مع استعلام المستخدم إلى نموذج LangChain ، للعثور على أفضل مصدر بيانات للإجابة على السؤال. يستخدم LangChain نموذج LLM الذي نختاره للكشف عن البيانات الوصفية للمصدر.
استخدم الكود التالي لاستخدام LLM من JumpStart أو طرز الجهات الخارجية:
يحتوي النص الذي تم إنشاؤه على معلومات مثل أسماء قاعدة البيانات والجداول التي يتم تشغيل استعلام المستخدم وفقًا لها. على سبيل المثال ، بالنسبة لاستعلام المستخدم "تسمية جميع الموظفين بتاريخ ميلاد هذا الشهر" ، generated_text
لديه المعلومات database == rdsmysql
و database.table == rdsmysql.employees
.
بعد ذلك ، نقوم بتمرير تفاصيل مجال الموارد البشرية وقاعدة بيانات Aurora MySQL وجدول الموظفين إلى Chain Sequence 2.
تسلسل السلسلة 2: استرداد الاستجابات من مصادر البيانات للإجابة على استعلام المستخدم
بعد ذلك ، نقوم بتشغيل سلسلة قاعدة بيانات LangChain SQL لتحويل النص إلى SQL وتشغيل SQL الذي تم إنشاؤه ضمنيًا مقابل قاعدة البيانات لاسترداد نتائج قاعدة البيانات بلغة بسيطة يمكن قراءتها.
نبدأ بتحديد قالب موجه يوجه LLM لإنشاء SQL بلهجة صحيحة نحويًا ثم تشغيله على قاعدة البيانات:
أخيرًا ، نقوم بتمرير LLM واتصال قاعدة البيانات والمطالبة إلى سلسلة قاعدة بيانات SQL وتشغيل استعلام SQL:
على سبيل المثال ، بالنسبة لاستعلام المستخدم "تسمية جميع الموظفين بتاريخ ميلاد هذا الشهر" ، تكون الإجابة كما يلي:
تنظيف
بعد تشغيل بنية البيانات الحديثة باستخدام الذكاء الاصطناعي التوليدي ، تأكد من تنظيف أي موارد لن يتم استخدامها. أغلق وحذف قواعد البيانات المستخدمة (Amazon Redshift و Amazon RDS و Snowflake). بالإضافة إلى ذلك ، احذف البيانات الموجودة في Amazon S3 وأوقف أي مثيلات دفتر ملاحظات Studio حتى لا تتحمل أي رسوم أخرى. إذا استخدمت JumpStart لنشر LLM كنقطة نهاية في الوقت الحقيقي لـ SageMaker ، فاحذف نقطة النهاية من خلال وحدة تحكم SageMaker أو Studio.
وفي الختام
في هذا المنشور ، قمنا بدمج بنية البيانات الحديثة مع الذكاء الاصطناعي التوليدي و LLMs داخل SageMaker. يستخدم هذا الحل العديد من نماذج الأساس لتحويل النص إلى نص من JumpStart بالإضافة إلى نماذج الجهات الخارجية. يحدد هذا النهج المختلط مصادر البيانات ، ويكتب استعلامات SQL ، وينشئ الاستجابات بنتائج الاستعلام. يستخدم Amazon Redshift و Amazon RDS و Snowflake و LLMs. لتحسين الحل ، يمكنك إضافة المزيد من قواعد البيانات وواجهة مستخدم للاستعلامات الإنجليزية والهندسة السريعة وأدوات البيانات. يمكن أن يصبح هذا طريقة ذكية وموحدة للحصول على رؤى من مخازن بيانات متعددة. للتعمق في الحل والكود الموضح في هذا المنشور ، تحقق من ملف جيثب ريبو . أيضا ، الرجوع إلى أمازون بيدروك لحالات الاستخدام في الذكاء الاصطناعي التوليدي ونماذج الأساس ونماذج اللغات الكبيرة.
الزائدة الدودية
يطالب سبيل المثال
نطاق | قاعدة البيانات / API | موجه | SQL (تم إنشاؤه بواسطة LLM) | الناتج |
المبيعات والتسويق | أمازون RedShift | كم عدد مبيعات التذاكر هناك؟ | SELECT COUNT(*) AS total_sales FROM tickit.sales; |
There are 172,456 ticket sales. |
المبيعات والتسويق | أمازون RedShift | ما هي العمولة الإجمالية لمبيعات التذاكر لعام 2008؟ | SELECT SUM(commission) AS total_commission FROM tickit.sales WHERE EXTRACT(YEAR FROM saletime) = 2008 |
The total commission for ticket sales in the year 2008 was $16,614,814.65. |
شروط وأحكام | S3 | كم عدد عمليات الاحتيال التي حدثت في عام 2023؟ | SELECT count(*) FROM claims WHERE extract(year from write_time) = 2023 AND fraud = 1; |
There were 164 fraud claims in 2023. |
شروط وأحكام | S3 | كم عدد السياسات التي تمت المطالبة بها هذا العام؟ | SELECT count(*) FROM claims; |
There were 5000 claims made this year. |
الموارد البشرية | أمازون أورورا ماي إس كيو إل | قم بتسمية جميع الموظفين بتاريخ ميلادهم هذا الشهر | SELECT * FROM employees WHERE MONTH(birth_date) = MONTH(CURRENT_DATE()); |
The employees with birthdays this month are: Christian Koblick Tzvetan Zielinski Kazuhito Cappelletti Yinghua Dredge |
الموارد البشرية | أمازون أورورا ماي إس كيو إل | كم عدد الموظفين الذين تم تعيينهم قبل عام 1990؟ | SELECT COUNT(*) AS 'Number of employees hired before 1990' FROM employees WHERE hire_date < '1990-01-01' |
29 employees were hired before 1990. |
التمويل والاستثمارات | ندفة الثلج | ما هو أداء الأسهم الأفضل والأسوأ في مايو 2013؟ | SELECT name, MAX(close) AS max_close, MIN(close) AS min_close FROM all_stocks_5yr WHERE date BETWEEN '2013-05-01' AND '2013-05-31' GROUP BY name ORDER BY max_close DESC, min_close ASC |
The stock that performed the best in May 2013 was AnySock1 (ASTOCK1) with a maximum closing price of $842.50. The stock that performed the worst was AnySock2 (ASTOCK2) with a minimum closing price of $3.22. |
التمويل والاستثمارات | ندفة الثلج | ما هو متوسط حجم الأسهم المتداولة في يوليو 2013؟ | SELECT AVG(volume) AS average_volume FROM all_stocks_5yr WHERE date BETWEEN '2013-07-01' AND '2013-07-31' |
The average volume of stocks traded in July 2013 was 4,374,177 |
المنتج - الطقس | API | كيف هو الطقس الآن في مدينة نيويورك بالدرجات فهرنهايت؟ |
حول المؤلف
نافنيت توتيجا هو متخصص بيانات في Amazon Web Services. قبل الانضمام إلى AWS ، عملت Navneet كميسر للمؤسسات التي تسعى إلى تحديث هياكل البيانات الخاصة بها وتنفيذ حلول AI / ML الشاملة. وهي حاصلة على إجازة في الهندسة من جامعة ثابار ، بالإضافة إلى ماجستير في الإحصاء من جامعة تكساس إيه آند إم.
سوفيك كومار ناث هو مهندس حلول AI / ML مع AWS. يتمتع بخبرة واسعة في تصميم التعلم الآلي الشامل وحلول تحليل الأعمال في التمويل والعمليات والتسويق والرعاية الصحية وإدارة سلسلة التوريد وإنترنت الأشياء. نشر Sovik مقالات وحصل على براءة اختراع في مراقبة نموذج ML. حصل على درجتي ماجستير مزدوجتين من جامعة جنوب فلوريدا ، جامعة فريبورغ ، سويسرا ، ودرجة البكالوريوس من المعهد الهندي للتكنولوجيا ، خراجبور. خارج العمل ، يستمتع سوفيك بالسفر وركوب العبارة ومشاهدة الأفلام.
- محتوى مدعوم من تحسين محركات البحث وتوزيع العلاقات العامة. تضخيم اليوم.
- تمويل EVM. واجهة موحدة للتمويل اللامركزي. الوصول هنا.
- مجموعة كوانتوم ميديا. تضخيم IR / PR. الوصول هنا.
- أفلاطونايستريم. ذكاء بيانات Web3. تضخيم المعرفة. الوصول هنا.
- المصدر https://aws.amazon.com/blogs/machine-learning/reinventing-the-data-experience-use-generative-ai-and-modern-data-architecture-to-unlock-insights/