بدء استخدام Amazon Titan Text Embeddings في Amazon Bedrock | خدمات الويب الأمازون

بدء استخدام Amazon Titan Text Embeddings في Amazon Bedrock | خدمات الويب الأمازون

تلعب عمليات التضمين دورًا رئيسيًا في معالجة اللغة الطبيعية (NLP) والتعلم الآلي (ML). تضمين النص يشير إلى عملية تحويل النص إلى تمثيلات رقمية موجودة في مساحة متجهة عالية الأبعاد. يتم تحقيق هذه التقنية من خلال استخدام خوارزميات تعلم الآلة التي تمكن من فهم معنى وسياق البيانات (العلاقات الدلالية) وتعلم العلاقات والأنماط المعقدة داخل البيانات (العلاقات النحوية). يمكنك استخدام تمثيلات المتجهات الناتجة لمجموعة واسعة من التطبيقات، مثل استرجاع المعلومات، وتصنيف النص، ومعالجة اللغة الطبيعية، وغيرها الكثير.

أمازون تيتان نص التضمين هو نموذج لتضمين النص يقوم بتحويل نص اللغة الطبيعية - الذي يتكون من كلمات مفردة أو عبارات أو حتى مستندات كبيرة - إلى تمثيلات رقمية يمكن استخدامها لتعزيز حالات الاستخدام مثل البحث والتخصيص والتجميع بناءً على التشابه الدلالي.

في هذا المنشور، نناقش نموذج Amazon Titan Text Embeddings وميزاته وأمثلة لحالات الاستخدام.

بعض المفاهيم الأساسية تشمل:

  • التمثيل العددي للنص (المتجهات) يلتقط الدلالات والعلاقات بين الكلمات
  • يمكن استخدام التضمينات الغنية لمقارنة تشابه النص
  • يمكن لتضمين النص متعدد اللغات تحديد المعنى بلغات مختلفة

كيف يتم تحويل جزء من النص إلى ناقل؟

هناك تقنيات متعددة لتحويل الجملة إلى ناقل. إحدى الطرق الشائعة هي استخدام خوارزميات تضمينات الكلمات، مثل Word2Vec أو GloVe أو FastText، ثم تجميع تضمينات الكلمات لتكوين تمثيل متجه على مستوى الجملة.

هناك نهج شائع آخر يتمثل في استخدام نماذج اللغة الكبيرة (LLMs)، مثل BERT أو GPT، والتي يمكن أن توفر تضمينات سياقية لجمل بأكملها. تعتمد هذه النماذج على بنيات التعلم العميق مثل Transformers، والتي يمكنها التقاط المعلومات السياقية والعلاقات بين الكلمات في الجملة بشكل أكثر فعالية.

بدء استخدام Amazon Titan Text Embeddings في Amazon Bedrock | أمازون ويب سيرفيسز PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.

لماذا نحتاج إلى نموذج التضمين؟

تعد عمليات تضمين المتجهات أمرًا أساسيًا بالنسبة إلى طلاب LLM لفهم الدرجات الدلالية للغة، كما تمكنهم أيضًا من الأداء الجيد في مهام البرمجة اللغوية العصبية (NLP) النهائية مثل تحليل المشاعر، والتعرف على الكيانات المسماة، وتصنيف النص.

بالإضافة إلى البحث الدلالي، يمكنك استخدام التضمينات لزيادة مطالباتك للحصول على نتائج أكثر دقة من خلال إنشاء الاسترجاع المعزز (RAG) - ولكن لاستخدامها، ستحتاج إلى تخزينها في قاعدة بيانات تتمتع بإمكانيات المتجهات.

بدء استخدام Amazon Titan Text Embeddings في Amazon Bedrock | أمازون ويب سيرفيسز PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.

تم تحسين نموذج Amazon Titan Text Embeddings لاسترجاع النص لتمكين حالات استخدام RAG. فهو يمكّنك أولاً من تحويل بياناتك النصية إلى تمثيلات رقمية أو متجهات، ثم استخدام تلك المتجهات للبحث بدقة عن المقاطع ذات الصلة من قاعدة بيانات المتجهات، مما يسمح لك بتحقيق أقصى استفادة من بيانات الملكية الخاصة بك مع النماذج الأساسية الأخرى.

لأن Amazon Titan Text Embeddings هو نموذج مُدار أمازون بيدروك، يتم تقديمها كتجربة بدون خادم تمامًا. يمكنك استخدامه عبر Amazon Bedrock REST API أو AWS SDK. المعلمات المطلوبة هي النص الذي ترغب في إنشاء التضمينات له و modelID المعلمة، التي تمثل اسم نموذج Amazon Titan Text Embeddings. التعليمة البرمجية التالية هي مثال لاستخدام AWS SDK لـ Python (Boto3):

import boto3
import json #Create the connection to Bedrock
bedrock = boto3.client( service_name='bedrock', region_name='us-west-2', ) bedrock_runtime = boto3.client( service_name='bedrock-runtime', region_name='us-west-2', ) # Let's see all available Amazon Models
available_models = bedrock.list_foundation_models() for model in available_models['modelSummaries']: if 'amazon' in model['modelId']: print(model) # Define prompt and model parameters
prompt_data = """Write me a poem about apples""" body = json.dumps({ "inputText": prompt_data,
}) model_id = 'amazon.titan-embed-text-v1' #look for embeddings in the modelID
accept = 'application/json' content_type = 'application/json' # Invoke model response = bedrock_runtime.invoke_model( body=body, modelId=model_id, accept=accept, contentType=content_type
) # Print response
response_body = json.loads(response['body'].read())
embedding = response_body.get('embedding') #Print the Embedding print(embedding)

سيبدو الإخراج كما يلي:

[-0.057861328, -0.15039062, -0.4296875, 0.31054688, ..., -0.15625]

الرجوع إلى إعداد أمازون بيدروك boto3 لمزيد من التفاصيل حول كيفية تثبيت الحزم المطلوبة، والاتصال بـ Amazon Bedrock، واستدعاء النماذج.

ميزات تضمين النص في Amazon Titan

باستخدام Amazon Titan Text Embeddings، يمكنك إدخال ما يصل إلى 8,000 رمز مميز، مما يجعله مناسبًا تمامًا للعمل مع كلمات فردية أو عبارات أو مستندات كاملة بناءً على حالة الاستخدام الخاصة بك. أمازون تيتان تقوم بإرجاع متجهات الإخراج ذات البعد 1536، مما يمنحها درجة عالية من الدقة، مع تحسين النتائج ذات زمن الوصول المنخفض والفعالة من حيث التكلفة.

يدعم Amazon Titan Text Embeddings إنشاء عمليات تضمين النص والاستعلام عنها بأكثر من 25 لغة مختلفة. وهذا يعني أنه يمكنك تطبيق النموذج على حالات الاستخدام الخاصة بك دون الحاجة إلى إنشاء وصيانة نماذج منفصلة لكل لغة تريد دعمها.

يوفر وجود نموذج تضمينات واحد تم تدريبه على العديد من اللغات الفوائد الأساسية التالية:

  • وصول أوسع - من خلال دعم أكثر من 25 لغة خارج الصندوق، يمكنك توسيع نطاق وصول تطبيقاتك إلى المستخدمين والمحتوى في العديد من الأسواق الدولية.
  • أداء ثابت – مع النموذج الموحد الذي يغطي لغات متعددة، يمكنك الحصول على نتائج متسقة عبر اللغات بدلاً من التحسين بشكل منفصل لكل لغة. يتم تدريب النموذج بشكل كلي حتى تحصل على الميزة عبر اللغات.
  • دعم الاستعلام متعدد اللغات - يسمح Amazon Titan Text Embeddings بالاستعلام عن عمليات تضمين النص بأي من اللغات المدعومة. وهذا يوفر المرونة في استرداد المحتوى المتشابه لغويًا عبر اللغات دون التقيد بلغة واحدة. يمكنك إنشاء تطبيقات تقوم بالاستعلام عن البيانات متعددة اللغات وتحليلها باستخدام نفس مساحة التضمين الموحدة.

حتى كتابة هذه السطور، يتم دعم اللغات التالية:

  • العربيه
  • الصينية المبسطة)
  • تقاليد صينية)
  • التشيكية
  • الهولندية
  • انجليزي
  • الفرنسية
  • الألمانيّة
  • العبرية
  • الهندية
  • الإيطالية
  • اليابانيّة
  • الكانادا
  • الكوريّة
  • المالايالامية
  • المراتية
  • البولنديّة
  • البرتغاليّة
  • روسي
  • الإسبانية
  • السويدية
  • التاغالوغية الفلبينية
  • التاميل
  • التيلجو
  • تركي

استخدام Amazon Titan Text Embeddings مع LangChain

لانجشين هو إطار عمل مفتوح المصدر شائع للعمل معه الذكاء الاصطناعي التوليدي النماذج والتقنيات الداعمة. يتضمن أ عميل BedrockEmbeddings الذي يغلف Boto3 SDK بشكل ملائم بطبقة تجريدية. ال BedrockEmbeddings يتيح لك العميل العمل مع النص والتضمينات مباشرة، دون معرفة تفاصيل طلب JSON أو بنيات الاستجابة. وفيما يلي مثال بسيط:

from langchain.embeddings import BedrockEmbeddings #create an Amazon Titan Text Embeddings client
embeddings_client = BedrockEmbeddings() #Define the text from which to create embeddings
text = "Can you please tell me how to get to the bakery?" #Invoke the model
embedding = embeddings_client.embed_query(text) #Print response
print(embedding)

يمكنك أيضًا استخدام LangChain BedrockEmbeddings العميل جنبًا إلى جنب مع عميل Amazon Bedrock LLM لتبسيط تنفيذ RAG والبحث الدلالي والأنماط الأخرى المتعلقة بالتضمين.

حالات الاستخدام للتضمين

على الرغم من أن RAG هي حالة الاستخدام الأكثر شيوعًا حاليًا للعمل مع عمليات التضمين، إلا أن هناك العديد من حالات الاستخدام الأخرى حيث يمكن تطبيق عمليات التضمين. فيما يلي بعض السيناريوهات الإضافية حيث يمكنك استخدام عمليات التضمين لحل مشكلات معينة، إما بمفردها أو بالتعاون مع LLM:

  • سؤال وجواب - يمكن أن تساعد عمليات التضمين في دعم واجهات الأسئلة والأجوبة من خلال نمط RAG. يتيح لك إنشاء التضمينات المقترنة بقاعدة بيانات متجهة العثور على تطابقات وثيقة بين الأسئلة والمحتوى في مستودع المعرفة.
  • توصيات شخصية - كما هو الحال مع السؤال والجواب، يمكنك استخدام التضمينات للعثور على وجهات العطلات أو الكليات أو المركبات أو غيرها من المنتجات بناءً على المعايير التي يقدمها المستخدم. يمكن أن يأخذ هذا شكل قائمة بسيطة من التطابقات، أو يمكنك بعد ذلك استخدام LLM لمعالجة كل توصية وشرح مدى استيفائها لمعايير المستخدم. يمكنك أيضًا استخدام هذا الأسلوب لإنشاء مقالات "أفضل 10" مخصصة للمستخدم بناءً على احتياجاته الخاصة.
  • إدارة البيانات – عندما يكون لديك مصادر بيانات لا يتم تعيينها بشكل واضح مع بعضها البعض، ولكن لديك محتوى نصي يصف سجل البيانات، يمكنك استخدام التضمينات لتحديد السجلات المكررة المحتملة. على سبيل المثال، يمكنك استخدام عمليات التضمين لتحديد المرشحين المكررين الذين قد يستخدمون تنسيقات أو اختصارات مختلفة أو حتى أسماء مترجمة.
  • ترشيد محفظة التطبيقات - عند البحث عن مواءمة محافظ التطبيقات عبر الشركة الأم وعملية الاستحواذ، ليس من الواضح دائمًا أين يمكن البدء في العثور على تداخل محتمل. يمكن أن تكون جودة بيانات إدارة التكوين عاملاً مقيدًا، وقد يكون من الصعب التنسيق بين الفرق لفهم مشهد التطبيق. باستخدام المطابقة الدلالية مع التضمينات، يمكننا إجراء تحليل سريع عبر محافظ التطبيقات لتحديد التطبيقات المرشحة ذات الإمكانات العالية للترشيد.
  • تجميع المحتوى – يمكنك استخدام عمليات التضمين للمساعدة في تسهيل تجميع المحتوى المماثل في فئات قد لا تعرفها مسبقًا. على سبيل المثال، لنفترض أن لديك مجموعة من رسائل البريد الإلكتروني للعملاء أو مراجعات المنتجات عبر الإنترنت. يمكنك إنشاء عمليات التضمين لكل عنصر، ثم تشغيل هذه التضمينات k- تعني التكتل لتحديد المجموعات المنطقية لاهتمامات العملاء، أو مدح المنتج أو شكاويه، أو مواضيع أخرى. يمكنك بعد ذلك إنشاء ملخصات مركزة من محتوى تلك المجموعات باستخدام LLM.

مثال البحث الدلالي

لدينا في مثال على جيثب، نعرض تطبيقًا بسيطًا للبحث عن التضمينات باستخدام Amazon Titan Text Embeddings وLangChain وStreamlit.

يطابق المثال استعلام المستخدم مع الإدخالات الأقرب في قاعدة بيانات المتجهات في الذاكرة. ثم نعرض تلك المطابقات مباشرة في واجهة المستخدم. يمكن أن يكون هذا مفيدًا إذا كنت تريد استكشاف أخطاء تطبيق RAG وإصلاحها، أو تقييم نموذج التضمين مباشرةً.

للتبسيط، نستخدم الذاكرة الداخلية فايس قاعدة بيانات لتخزين ناقلات التضمين والبحث عنها. في سيناريو العالم الحقيقي على نطاق واسع، من المحتمل أن ترغب في استخدام مخزن بيانات ثابت مثل محرك متجه لـ Amazon OpenSearch Serverless أو ال com.pgvector امتداد لـ PostgreSQL.

جرّب بعض المطالبات من تطبيق الويب بلغات مختلفة، مثل ما يلي:

  • كيف يمكنني مراقبة استخدامي؟
  • كيف يمكنني تخصيص النماذج؟
  • ما هي لغات البرمجة التي يمكنني استخدامها؟
  • قم بالتعليق على البيانات التي هي آمنة ?
  • هل من الممكن أن يكون هذا هو الحال؟
  • هل يتوفر مُنشئو النماذج بشكل أفضل من Bedrock؟
  • في منطقة ما هي منطقة الأمازون Bedrock verfügbar؟
  • هل من الممكن أن يكون هذا هو الحال؟

لاحظ أنه على الرغم من أن المادة المصدر كانت باللغة الإنجليزية، إلا أن الاستعلامات باللغات الأخرى تمت مطابقتها مع الإدخالات ذات الصلة.

وفي الختام

تعد إمكانيات إنشاء النص في النماذج الأساسية مثيرة للغاية، ولكن من المهم أن تتذكر أن فهم النص، والعثور على المحتوى ذي الصلة من مجموعة من المعرفة، وإجراء اتصالات بين المقاطع أمر بالغ الأهمية لتحقيق القيمة الكاملة للذكاء الاصطناعي التوليدي. سنستمر في رؤية حالات استخدام جديدة ومثيرة للاهتمام للتضمينات تظهر خلال السنوات القادمة مع استمرار هذه النماذج في التحسن.

الخطوات التالية

يمكنك العثور على أمثلة إضافية لعمليات التضمين كدفاتر ملاحظات أو تطبيقات تجريبية في ورش العمل التالية:


حول المؤلف

بدء استخدام Amazon Titan Text Embeddings في Amazon Bedrock | أمازون ويب سيرفيسز PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.جيسون ستيهل هو أحد كبار مهندسي الحلول في AWS، ومقره في منطقة نيو إنجلاند. إنه يعمل مع العملاء لمواءمة قدرات AWS مع أكبر تحديات الأعمال التي يواجهونها. خارج العمل، يقضي وقته في بناء الأشياء ومشاهدة أفلام الكتب المصورة مع عائلته.

بدء استخدام Amazon Titan Text Embeddings في Amazon Bedrock | أمازون ويب سيرفيسز PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.نيتين يوسابيوس هو مهندس حلول المؤسسات الأول في AWS، ويتمتع بخبرة في هندسة البرمجيات، وهندسة المؤسسات، والذكاء الاصطناعي/تعلم الآلة. إنه متحمس للغاية لاستكشاف إمكانيات الذكاء الاصطناعي التوليدي. وهو يتعاون مع العملاء لمساعدتهم في إنشاء تطبيقات جيدة التصميم على منصة AWS، كما أنه ملتزم بحل التحديات التقنية ومساعدتهم في رحلتهم السحابية.

بدء استخدام Amazon Titan Text Embeddings في Amazon Bedrock | أمازون ويب سيرفيسز PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.راج باتاك هو مهندس الحلول الرئيسي والمستشار الفني لشركات Fortune 50 الكبيرة ومؤسسات الخدمات المالية متوسطة الحجم (FSI) في جميع أنحاء كندا والولايات المتحدة. وهو متخصص في تطبيقات التعلم الآلي مثل الذكاء الاصطناعي التوليدي، ومعالجة اللغات الطبيعية، ومعالجة المستندات الذكية، وعمليات MLOps.

بدء استخدام Amazon Titan Text Embeddings في Amazon Bedrock | أمازون ويب سيرفيسز PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.ماني خانوجا هي قائدة تقنية - متخصصون في الذكاء الاصطناعي التوليدي، ومؤلفة الكتاب - التعلم الآلي التطبيقي والحوسبة عالية الأداء على AWS، وعضو مجلس إدارة مجلس إدارة مؤسسة المرأة في تعليم التصنيع. وهي تقود مشاريع التعلم الآلي (ML) في مجالات مختلفة مثل رؤية الكمبيوتر ومعالجة اللغة الطبيعية والذكاء الاصطناعي التوليدي. إنها تساعد العملاء على بناء نماذج كبيرة للتعلم الآلي وتدريبها ونشرها على نطاق واسع. وهي تتحدث في مؤتمرات داخلية وخارجية مثل Re:Invent وWomen in Manufacturing West وندوات عبر الإنترنت على YouTube وGHC 23. وفي أوقات فراغها، تحب الذهاب لمسافات طويلة على طول الشاطئ.

بدء استخدام Amazon Titan Text Embeddings في Amazon Bedrock | أمازون ويب سيرفيسز PlatoBlockchain Data Intelligence. البحث العمودي. منظمة العفو الدولية.مارك روي هو مهندس رئيسي لتعلم الآلة في AWS ، يساعد العملاء على تصميم وبناء حلول AI / ML. يغطي عمل Mark مجموعة واسعة من حالات استخدام ML ، مع اهتمام أساسي برؤية الكمبيوتر والتعلم العميق وتوسيع ML عبر المؤسسة. لقد ساعد الشركات في العديد من الصناعات ، بما في ذلك التأمين والخدمات المالية والإعلام والترفيه والرعاية الصحية والمرافق والتصنيع. يحمل مارك ست شهادات AWS ، بما في ذلك شهادة التخصص في ML. قبل انضمامه إلى AWS ، كان مارك مهندسًا معماريًا ومطورًا وقائدًا في مجال التكنولوجيا لأكثر من 25 عامًا ، بما في ذلك 19 عامًا في الخدمات المالية.

الطابع الزمني:

اكثر من التعلم الآلي من AWS