يحتوي هذا المستودع على رمز المصدر والنموذج المدرب لنموذج توليد استجابة الحوار على نطاق واسع. تشير نتائج التقييم البشري إلى أن الاستجابة التي تم إنشاؤها من الحوار قابلة للمقارنة مع جودة الاستجابة البشرية في ظل اختبار تورينج محادثة واحدة.
يعتمد المستودع على Luggingface Pytorch-Transformer و Openai GPT-2 ، والذي يحتوي على البرنامج النصي لاستخراج البيانات ، ورمز تدريب النماذج ، وتوسيط نموذج صغير (117 مترًا) (345 مترًا) ونقطة كبيرة (762 مترًا).
يتم تدريب النموذج على حوار متعدد المنعطفات 147M من سلسلة مناقشة Reddit. يمكن تدريب أكبر نموذج في عدة ساعات على آلات 8 V100 (ومع ذلك ، هذا غير مطلوب) ، مع التدريب الموزع وخيار FP16.
يمكن استخدام البرنامج النصي للتضمين لإعادة إنتاج نتائج تحدي توليد الحوار DSTC-7 ومجموعة بيانات متعددة المرجع 6K تم إنشاؤها من بيانات Reddit.
Project WebPage: https://www.microsoft.com/en-us/research/project/large-scale-pretraining-for-seponse-generation/
ورقة Arxiv: https://arxiv.org/abs/1911.00536
(تحديث 07/09/2022) التغييرات على ملفات files.pushshift.io/reddit تسببت في كسر خط أنابيب توليد البيانات لدينا. تم إصلاح هذه المشكلات الآن ، وينبغي أن تعمل الخطوات الموضحة في القسم الفرعي لإعداد البيانات أدناه مرة أخرى. يتم إنشاء البيانات في حوالي 10 ساعات مع 8 عمليات ( -j 8 ) ، وهناك حاجة إلى 800 جيجابايت من مساحة القرص المؤقت.
(تحديث 06/23/2021) لقد أصدرنا إصدارًا من الحوار (Retgen) ، من فضلك
(تحديث 05/20/2021)
(تحديث 03/31/2021) عرض تجريبي من طرف ثالث بواسطة AK391 باستخدام Gradio Web Demo Try It Out
(تحديث 09/15/2020) تم إصدار مجموعة من نماذج ترتيب الحوار على نطاق واسع!
تم تحسين توليد الحوار من خلال الاندماج مع أحدث نماذج ترتيب الحوار لدينا ، DialOgrpt
(تحديث 07/08/2020) تم إصدار مجموعة اختبار 6K Multi-Ref!
لإنشاء البيانات ، Pleaser Run demo.py وتعيين خيار البيانات إلى "Full"
./data/test.refs.txt
(تحديث 03/10/2020) بطاقات النماذج المتاحة في محولات Huggingface!
يرجى مراجعة بطاقات النماذج الخاصة بنا في مستودع Transformers Huggingface. مع عدة أسطر من التعليمات البرمجية ، يجب أن يكون من المقرر أن تلعب مع الحوار بشكل تفاعلي.
نموذج صغير: https://huggingface.co/Microsoft/Dialogpt-Small
النموذج المتوسط: https://huggingface.co/Microsoft/Dialogpt-Medium
نموذج كبير: https://huggingface.co/Microsoft/Dialogpt-large
(جديد) نموذج الترتيب: https://huggingface.co/microsoft/dialogrptdown
(تحديث 01/06/2020)
تم تطوير Dialogpt بالكامل على Ubuntu 16.04 ، و - اعتمادًا على توفرنا - نحاول تقديم الدعم إذا واجهت صعوبات في تشغيل الكود على نفس التكوين. ومع ذلك ، لا يمكننا تقديم الدعم للتوزيعات الأخرى أو أنظمة التشغيل . قد يتم تشغيل أجزاء من الكود على نكهات UNIX الأخرى (MacOS ، نظام Windows الفرعي لـ Linux ، Cygwin ، إلخ) ، ولكن يوصى باستخدام Ubuntu لرمز التدريب الرئيسي.
يمكن تشغيل رمز التدريب على وحدة المعالجة المركزية ، ولكن يمكن أن يكون بطيئًا. نوصي باستخدام GPU لتدريب جميع الطرز. لا يوجد حد أدنى لعدد وحدات معالجة الرسومات. ومع ذلك ، إذا كان استخدام القطار الموزع لتكوين وحدات معالجة الرسومات المتعددة ، فإن التسريع مقابل عدد وحدات معالجة الرسومات الخطي تقريبًا. لمحاكاة نفس الدجال عند استخدام وحدات معالجة الرسومات الأقل ، يرجى استخدام gradient_accumulation_steps أكبر في تدريب النماذج.
يمكن تحميل طراز 117M و 345M في وحدة معالجة الرسومات الواحدة مع ذاكرة 12G. يتطلب نموذج 762 متر وحدة معالجة رسومات واحدة تحتوي على ذاكرة أكبر من 16 جرام للتدريب الفعال. سرعة التدريب على البيانات القياسية مع 50 مليون حالة تدريب و V100 وحدات معالجة الرسومات:
| N_GPU | وقت الحقبة (ح) | رمز/ثانية |
|---|---|---|
| 1 | 118 | 10847 |
| 2 | 62 | 20645 |
| 4 | 34 | 37647 |
| 8 | 18 | 71356 |
عادة ما يتطلب الضبط من نموذجنا المسبق على مجموعة بيانات جديدة 1-2 عصر.
لقد أنشأنا عرضًا تجريبيًا لـ demo.py لتخفيف صعوبة نشر هذا النظام. يحتوي demo.py على خط أنابيب لتنزيل النماذج ، واستخراج البيانات ، والمعالجة المسبقة للبيانات ، والتدريب النموذجي على مجموعة بيانات وهمية داخل سطر أمر واحد.
يرجى استخدام خطوط الأوامر أدناه لاستنساخ ، وتثبيت المتطلبات وتحميل بيئة conda (لاحظ أن مجموعة أدوات مطور NVIDIA CUDA 10.0 مطلوبة):
sudo apt-get install -y make wget gzip bzip2 xz-utils zstd sedgit clone https://github.com/microsoft/DialoGPT.git
cd DialoGPT
conda env create -f LSP-linux.yml -n LSP
conda activate LSP إذا قمت بتشغيل هذا على بنية أخرى غير Linux ، فيرجى استخدام LSP-generic.yml بدلاً من LSP-linux.yml ولكن يرجى ملاحظة أنه لم يتم اختباره العام في جميع المنصة ، وبالتالي لا يمكن أن يكون stablity gauranteed. لاستخدام تدريب FP16 ، يرجى تثبيت Apex باستخدام الأوامر أدناه
conda activate LSP
git clone https://github.com/NVIDIA/apex
cd apex
git reset --hard 3d01e4a0a188cc8df54bc6e44cf5eb40ff6b4cc5
pip install -v --no-cache-dir --global-option= " --cpp_ext " --global-option= " --cuda_ext " .
python3.6 demo.pyللبدء ، قم أولاً بتثبيت Docker و Nvidia-Docker من إعادة الشراء الرسمية. يمكن تحميل بيئة الصورة لتشغيل الرمز على النحو التالي:
nvidia-docker v2. *
$ docker run --gpus all --ipc=host --rm -it -v $PWD :/workspace --network=host icaruszyz/large-scale-training:dialogpt bashnvidia-docker v1. *
$ nvidia-docker --rm -it -v $PWD :/workspace --network=host icaruszyz/large-scale-training:dialogpt bashداخل حاوية Docker ، قم بتشغيل
python demo.py يشرح هذا القسم جميع المكونات في demo.py
قبل تشغيل demo.py ، يمكنك تعيين Data_folder (القيمة الافتراضية ./models ) في demo.py كمكان تريد تنزيل جميع البيانات والموديلات المسبقة. ثم ببساطة الجري
python demo.pyل
لاحظ أنه افتراضيًا ، سيستخدم demo.py بيانات وهمية ، يرجى تحديد بيانات تدريب Reddit باستخدام الخيار --data . ثلاثة خيارات متوفرة: dummy ، small full .
python demo.py --data small
python demo.py --data fullتبلغ بيانات Reddit الصغيرة حوالي 140 ميجابايت وبيانات Reddit الكاملة أكثر من 27 جيجابايت. يمكنك إعداد فنجان من القهوة عند المعالجة باستخدام بيانات Reddit الكاملة لأن الأمر يستغرق وقتًا طويلاً !
لإنشاء بيانات مجموعة اختبار 6K متعددة REF ، Pleaser Run demo.py وتعيين خيار البيانات إلى "Full" ، سيتم تحديد الجيل في
./data/test.refs.txt
تتوفر النماذج المسبقة والمثقة على Azure BlobStorage. يرجى تشغيل/رؤية demo.py لمزيد من التفاصيل حول كيفية تنزيل/استخدام هذه النماذج. أو يمكنك التنزيل مباشرة باستخدام الروابط في demo_utils.py .
أولاً ، استخدم " prepare4db.sh لتحويل ملف بيانات TSV إلى التنسيق الصحيح الذي يمكن أن يتعرف عليه البرنامج النصي التالي. يجب معالجة بيانات Trainig بعد ذلك في ملف قاعدة بيانات مع سطر الأوامر أدناه:
python prepro.py --corpus $DATA_PATH يمكن استخدام البرنامج النصي التدريبي في وحدة معالجة الرسومات المفردة أو إعدادات GPU متعددة (التدريب الموزع عبر وحدات معالجة الرسومات المتعددة داخل عقدة واحدة):
python ./LSP_train.py # Single GPU training
python -m torch.distributed.launch --nproc_per_node=8 ./LSP_train.py # Training on 8 GPUsنصي التدريب يقبل العديد من الحجج لتعديل التدريب:
| دعوى | يكتب | القيمة الافتراضية | وصف |
|---|---|---|---|
| max_seq_length | int | 128 | الحد الأقصى لعدد الرموز لكل مثيل تدريب. |
| Train_input_file | str | "" | مسار مجموعة بيانات التدريب بتنسيق .DB |
| eval_input_file | str | "" | مسار التحقق من الصحة بتنسيق TSV |
| متابعة | int | 0 | استئناف التدريب بعد عدد محدد من الخطوات |
| FP16 | boolean | True | ما إذا كان لاستخدام 16 بت نقطة عائمة للتدريب النموذجي. |
| Train_batch_size | int | 4 | حجم الدُفعة للتدريب |
| Valid_batch_size | int | 4 | حجم الدُفعة للتحقق |
| gradient_accumulation_steps | int | 2 | تراكم التدرجات على عدة خطوات |
| التعلم | float | 1e-5 | معدل التعلم |
| lr_schedule | str | noam | يمكن اختيار جدول معدل التعلم من [ noam ، noamwd ، BERT ، None ] |
| num_optim_steps | int | 1000000 | عدد خطوات تحسين التدريب |
| no_token_id | boolean | True | إذا تم تعيينه صحيحًا ، باستخدام التضمين من النوع الرمزي. |
أثناء التدريب ، سيتم تحديث ملفين السجل. يحتوي train_log.txt و eval_log.txt على إحصائيات النموذج ، والحيرة وسرعة التدريب (الرموز/ثانية) للتدريب ومجموعة DEV.
يمكن العثور على ملف السجل ونقطة تفتيش النموذج المحفوظة في ./models/output_model
نلاحظ أنه حتى مع مجموعة بيانات Reddit التي تمت تصفيتها بشكل صحيح ، لا يزال بإمكان نموذجنا في بعض الأحيان إنشاء استجابات سامة/غير لائقة معتدلة. نظرًا لهذا السبب ، لا يمكننا تقديم البرنامج النصي لفك تشفير في هذا الوقت (العرض التجريبي المباشر وفك تشفير وصول البرنامج النصي عند الدعوة الآن فقط). ما زلنا حاليًا نعمل على طريقة فك التشفير التي يتم التحكم فيها لمنع هذا النظام من التوليد السام. من فضلك ترقبوا.
انظر القضايا رقم 3 ومناقشات Reddit لبعض المناقشات حول طرق فك تشفير الطرف الثالث.
انظر أدناه للحصول على بعض طرق فك تشفير الطرف الثالث:
نقوم بإصدار 6 نماذج صعبة التي يمكن ضبطها بشكل أكبر على مجموعة بيانات منخفضة الموارد المعتمدة من المستخدمين. يتراوح إجمالي المعلمات في هذه النماذج من 117 متر إلى 762 مترًا ، وفقًا لأحجام طراز Openai GPT-2.
| نموذج | تم ضبطه من GPT-2 | تدرب من الصفر |
|---|---|---|
| حوار 762M نموذج | [رابط] [بطاقة نموذج Huggingface] | [وصلة] |
| حوار 345M نموذج | [رابط] [بطاقة نموذج Huggingface] | [وصلة] |
| حوار 117M نموذج | [رابط] [بطاقة نموذج Huggingface] | [وصلة] |
| نموذج حوار 345M (عكس ، ل MMI) | وصلة | - |
| Dialogrpt (نماذج تصنيف جديدة ) | وصلة | - |
يمكن تحميل ملفات النماذج تمامًا مثل نقاط تفتيش طراز GPT-2 من محولات Huggingface. يمكنك العثور على ملفات التكوين المقابلة ( merges.txt ، config.json ، vocab.json ) في Dialogpt's repo in ./configs/* .
النموذج العكسي يتوقع المصدر من الهدف. يستخدم هذا النموذج ل MMI Reranking.
نماذج Dialogrpt لدينا نماذج الترتيب المقترحة مؤخرًا تستخدم للتنبؤ بالتعليقات البشرية (الصعود ، الردود) من الاستجابات. يمكن استخدام هذه النماذج لتحسين جودة توليد الحوار (انظر ورقة EMNLP الخاصة بنا للحصول على التفاصيل).
تتمثل الخطوة الأولى لإعادة تدريب النماذج الكاملة في إنشاء مجموعة بيانات Reddit المذكورة أعلاه. يتضمن ذلك تنزيل مقالب التقديم والتعليقات الكاملة من https://files.pushshift.io/reddit وإنشاء ملفات وسيطة ، والتي تتطلب بشكل عام 700 جيجابايت من مساحة القرص المحلي . يتطلب تنزيل البيانات الكاملة ومعالجتها حوالي 1-2 أيام ، اعتمادًا على (CPU) capabilties (على سبيل المثال ، ~ 24 ساعة مع 8 نوى على جهاز كمبيوتر حديث). على افتراض أنك قمت بتشغيل خطوات الإعداد والتثبيت أعلاه (تنشيط Conda LSP ، إلخ) ، يمكنك إنشاء مجموعة البيانات الكاملة عن طريق التشغيل إما:
python demo.py --data full
أو
cd reddit_extractor; SIZE=full make -j 8; cd ..
يستدعي الأمر السابق الأخير ، وبالتالي فإن الطريقتين متكافئين. نوصي الأول ، لأن الأخير مفيد في الغالب إذا واجهت أي مشكلة أو ترغب في تخصيص أي وسيطات (على سبيل المثال ، يتيح لك الأمر make إنشاء مجموعة فرعية فقط من البيانات). لاحظ أن مرحلة التنزيل يمكن أن تكون عرضة للخطأ ، على سبيل المثال بناءً على تحديد الموقع الجغرافي (جدار الحماية ، إلخ). إذا فشلت الأوامر أعلاه في إنشاء data/train.tsv ، أو إذا لم يكن هذا الملف قريبًا من 27 جيجابايت ، فهذا يعني أن هناك خطأ ما. في هذه الحالة ، قد ترغب في فحص reddit_extractor/wget-log و reddit_extractor/logs/*.log لأي خطأ واضح (على سبيل المثال ، غير قادر على التنزيل من pushshift.io). إذا لم تكن رسائل الخطأ منطقية بالنسبة لك ، فلا تتردد في الاتصال بنا. إذا كان الأمر كذلك ، فيرجى التأكد من تضمين أي رسائل خطأ تم جمعها من ملفات السجل هذه.
إحصاءات بيانات التدريب: يجب أن يكون ملف TSV التدريبي الذي تم إنشاؤه حوالي 26.8 جيجابايت غير مضغوط ، مع وجود 146.8 مليون حالة تدريب ، ورموز المصدر 3.87B ، و 2.14B الرموز المستهدفة (بما في ذلك الأوزان على مستوى الكلام 0/1). يجب أن يحتوي ملف Train.tsv الناتج على 146،846،215 خطًا.
نوصي بإنشاء البيانات أعلاه باستخدام demo.py --data full ، حيث أنه (1) ينشئ البيانات ، (2) يحولها إلى تنسيق DB ، و (3) يدرب نموذجًا باستخدام python LSP_train.py . يرجى تحرير demo.py مباشرة إذا كنت ترغب في تخصيص أي من المقاييس المفرطة.
حقق نموذجنا النتائج الحديثة في مهمة توليد استجابة التحدي DSTC-7.
| تجربة | NIST2 | NIST4 | bleu2 | bleu4 | نيزك | ent-4 | dist-1 | Dist-2 | متوسط. لين |
|---|---|---|---|---|---|---|---|---|---|
| استجابة الإنسان | 2.62 | 2.65 | 12.35 ٪ | 3.13 ٪ | 8.31 ٪ | 10.45 | 16.66 ٪ | 67.01 ٪ | 18.8 |
| DSTC-7 الفائز | 2.51 | 2.52 | 14.35 ٪ | 1.83 ٪ | 8.07 ٪ | 9.03 | 10.89 ٪ | 32.49 ٪ | 15.1 |
| حوار 345 م | 2.80 | 2.82 | 14.16 ٪ | 2.31 ٪ | 8.51 ٪ | 10.08 | 9.13 ٪ | 39.73 ٪ | 16.9 |
| مربع الحوار 345M (BS) | 2.92 | 2.97 | 19.18 ٪ | 6.05 ٪ | 9.29 ٪ | 9.57 | 15.73 ٪ | 51.03 ٪ | 14.2 |
حيث يمثل ENT درجة الانتروبيا ، ويمثل DIST النتيجة المتميزة. لجميع المقاييس باستثناء متوسط الطول ، أكبر أفضل.
لاحظ أن التقييم التلقائي المتفوق الذي يقارن بالاستجابات البشرية لا يعني أن نموذجنا يحقق التكافؤ البشري. يرجى مراجعة ورقتنا للحصول على مزيد من التحليل التفصيلي.
لضبط نموذج الحوار 345M على بيانات تحدي DSTC-7 على خادم مع 8 V100 GPU ، يرجى تشغيل سطر الأوامر التالي (يمكن العثور على بيانات DSTC في DSTC-7 REPO):
python3 -m torch.distributed.launch --nproc_per_node=8 train_LSP.py --init_checkpoint ./models/medium/medium_ft.pkl --train_input_file ./data/DSTC_train.db --eval_input_file ./data/DSTC_valid.tsv --model_name_or_path ./model/medium/ --learning_rate 1e-4 --train_batch_size 64 --eval_batch_size 64 --no_token_idيمكن العثور على النموذج المدرب في نموذج DSTC المتوسطة
يرجى تنزيل حزم الطرف الثالث التالي وحفظها في المجلد الفارغ 3rdparty :
cpan install ): XML: TWIG ، النوع: بشكل طبيعي وسلسلة: UTIL. يرجى اتباع REPO الرسمي DSTC-7 لاستخراج البيانات ، ووضع data-official-test/test.refs.txt في ./dstc/data/ .
قم بتشغيل البرنامج النصي للاستخراج أدناه لإنتاج ملف فرضية الاستجابة البشرية human.resp.txt :
python extract_human.pyأخيرًا ، لإعادة إنتاج نتائج الفرضية البشرية على مجموعة بيانات DSTC ، يرجى تشغيل الأوامر التالية تحت مجلد REPO:
python batch_eval.py سيتم إنشاء نتائج التقييم في المجلد ./dstc/eval/
نختبر على مجموعة بيانات 6K متعددة REF من Reddit. تم تلخيص النتائج في أدناه
| تجربة | NIST2 | NIST4 | bleu2 | bleu4 | نيزك | ent-4 | dist-1 | Dist-2 | متوسط. لين |
|---|---|---|---|---|---|---|---|---|---|
| استجابة الإنسان | 3.41 | 4.25 | 17.90 ٪ | 7.48 ٪ | 10.64 ٪ | 11 | 14.50 ٪ | 63.00 ٪ | 13.1 |
| حوار 117 م | 2.39 | 2.41 | 10.54 ٪ | 1.55 ٪ | 7.53 ٪ | 10.78 | 8.60 ٪ | 39.90 ٪ | 12.8 |
| حوار 345 م | 3 | 3.06 | 16.96 ٪ | 4.56 ٪ | 9.81 ٪ | 9.13 | 6.80 ٪ | 26.30 ٪ | 12.2 |
| مربع الحوار 762M | 2.84 | 2.9 | 18.66 ٪ | 5.25 ٪ | 9.66 ٪ | 9.72 | 7.76 ٪ | 29.93 ٪ | 11.2 |
| مربع الحوار 345M (BS) | 3.4 | 3.5 | 21.76 ٪ | 7.92 ٪ | 10.74 ٪ | 10.48 | 12.38 ٪ | 48.74 ٪ | 11.3 |
| مربع الحوار 345M (W/MMI) | 3.28 | 3.33 | 15.68 ٪ | 3.94 ٪ | 11.23 ٪ | 11.25 | 9.39 ٪ | 45.55 ٪ | 17.2 |
نقوم أيضًا بإجراء تقييمات الإنسان (أمثلة 6K لكل طريقة ، يتم تقييم كل مثال من قبل 3 قضاة بشريين). تُظهر النتائج دليلًا قويًا على أن جودة جيلنا تتجه نحو الاقتراب من جودة الاستجابات الإنسانية الحقيقية ، في ظل اختبار تورينج غير تفاعلي هذا:
الصلة : A و B ، أيهما أكثر صلة بمطالبة المصدر.
| النظام أ | يفوز (٪) | العلاقات (٪) | B يفوز (٪) | النظام ب |
|---|---|---|---|---|
| حوار 345 م | 2671 (45 ٪) | 513 (9 ٪) | 2816 (47 ٪) | الردود الإنسانية |
| حوار 345 م | 3281 (72 ٪) | 394 (9 ٪) | 882 (19 ٪) | الشخصية |
| مربع حوار 345 م ث/ MMI | 2871 (48 ٪) | 522 (9 ٪) | 2607 (43 ٪) | الردود الإنسانية |
المعلوماتية : A و B ، أيهما أكثر رضىًا وغنية بالمعلومات.
| النظام أ | يفوز (٪) | العلاقات (٪) | B يفوز (٪) | النظام ب |
|---|---|---|---|---|
| حوار 345 م | 2722 (45 ٪) | 234 (4 ٪) | 3044 (51 ٪) | الردود الإنسانية |
| حوار 345 م | 3490 (77 ٪) | 206 (5 ٪) | 861 (19 ٪) | الشخصية |
| مربع حوار 345 م ث/ MMI | 3011 (50 ٪) | 234 (4 ٪) | 2755 (46 ٪) | الردود الإنسانية |
تشبه الإنسان : A و B ، والتي تعتقد أنها أكثر عرضة لتوليدها من قبل الإنسان.
| النظام أ | يفوز (٪) | العلاقات (٪) | B يفوز (٪) | النظام ب |
|---|---|---|---|---|
| حوار 345 م | 2716 (45 ٪) | 263 (4 ٪) | 3021 (50 ٪) | الردود الإنسانية |
| حوار 345 م | 3462 (76 ٪) | 196 (4 ٪) | 899 (20 ٪) | الشخصية |
| مربع حوار 345 م ث/ MMI | 2978 (50 ٪) | 241 (4 ٪) | 2781 (46 ٪) | الردود الإنسانية |
يرجى الاطلاع على التفاصيل الكاملة في ورقة Arxiv الخاصة بنا.
| دور | إجابة |
|---|---|
| مستخدم | هل يشتري المال السعادة؟ |
| بوت | يعتمد على مقدار الأموال التي تنفقها عليها. |
| مستخدم | ما هي أفضل طريقة لشراء السعادة؟ |
| بوت | عليك فقط أن تكون مليونيرا بحلول أوائل العشرينات من العمر ، ثم يمكنك أن تكون سعيدًا. |
| مستخدم | هذا صعب جدا! |
| بوت | ليس لديك أي فكرة عن مدى صعوبة أن تكون مليونير وسعيد. هناك سبب للأثرياء لديهم الكثير من المال |
| دور | إجابة |
|---|---|
| مستخدم | ما معنى الحياة؟ |
| بوت | المعنى هو أن تكون مع عائلتك وأصدقائك. |
| بوت | سأخمن: هذا يعني أن والديك وأصدقائك أحبواك. هذا هو المعنى ، على ما أعتقد. |
| بوت | أعتقد أن المعنى هو التأكد من أنك على قيد الحياة عندما تموت. لذلك ستكون مع عائلتك وأصدقائك ونفسك. |
| بوت | هذا ليس كذلك ، ولكن شكرا لمحاولة المساعدة. |
| مستخدم | بوت |
|---|---|
| من هو أول رئيس للولايات المتحدة | جورج واشنطن |
| ما هي نقطة الغليان في الماء؟ | أعتقد أنه حوالي 212 ف. |
| أي واحد أكبر ، الشمس أو القمر؟ | الشمس. |
| أي حيوان لديه خطوط بالأبيض والأسود؟ | قطة مخططة بالأبيض والأسود. |
| مستخدم | بوت |
|---|---|
| لا تزال الحرب التجارية بين الصين والولايات المتحدة تحدث. | أنا متأكد من أن الحكومة الصينية و U. ق. سيكون على ما يرام مع ذلك طالما أنها تحافظ على أذرعهم على الطاولة والمال المتدفق. |
| من فاز بكأس العالم في عام 2018؟ | ألمانيا ، أعتقد. |
| Nvidia's Titan RTX جيد حقًا. | لدي هذه البطاقة وأحبها. لا شكاوى. |
| هل يمكن أن تغلب بورشه على تسلا مع Taycan EV الجديد؟ | أنا لا أعتقد ذلك . تسلا أقوى من بورشه. |
| مستخدم | بوت |
|---|---|
| ما معنى الحياة الجيدة؟ | أعتقد أن أننا جميعًا مرتبطون بحياتنا السابقة ومعنى الحياة هو أن نعيش بالطريقة التي تريدها وكيف تريد. |
| أيهما أكثر أهمية - النجاح أو السعادة؟ | أن تكون ناجحًا لا نهاية له. أن تكون سعيدًا هو الشيء الوحيد المهم. |
| هل السلام هو الطريقة الوحيدة لوقف الحرب؟ | ليس إذا كان العالم غير مستعد للعمل معك. السلام هو الهدف النهائي ، لكن السلام يتطلب أكثر من ذلك. |
| ما مقدار الحرية التي يجب أن يتمتع بها الناس؟ | مقدار الحرية الصحيح هو الحرية في فعل ما يحلو لك ، طالما أنك لا تؤذي الناس أو الممتلكات. |
| مستخدم | بوت |
|---|---|
| ما رأيك في حوار ريبو؟ | إنه جيد جدًا ، لكن من السهل جدًا العثور على خطأ. |
يرجى بدء مشكلة إذا اكتشفت أي :)
يتم دعوة العرض التجريبي المباشر وفك التشفير عند دعوة فقط الآن. يرجى البقاء ضبطها للإصدار الكامل.
Retgen: https://github.com/dreasysnail/retgen. حوار استرجاع/أرس على الأرض وخارجه. Retgen هو إطار تدريبي مشترك يعمل في وقت واحد على تحسين مسترد ممر كثيف ومولد نص على أساس المعرفة بطريقة شاملة.
Microsoft ICECAPS: https://github.com/microsoft/icecaps.
كمستودع متعامد لهذا المشروع ، تعد Microsoft ICECAPS مجموعة أدوات مفتوحة المصدر (في TensorFlow) لبناء أنظمة المحادثة العصبية. توفر ICECAPs مجموعة من الأدوات من نمذجة المحادثة الحديثة وأدب NLP العام ضمن نموذج مرن يتيح إعدادات التعلم متعددة المهام المعقدة.
PretRained Unilm: https://github.com/microsoft/unilm
Mt-dnn: https://github.com/namisan/mt-dnn
نظير صيني من الحوار من قبل يانغجيانكسين 1. https://github.com/yangjianxin1/gpt2-chitchat. يسعدنا أن نرى أن استراتيجية MMI التي استخدمناها في الحوار قد حسنت أيضًا أداء هذا المشروع أيضًا!
يرجى الاتصال [email protected] إذا كان لديك أي أسئلة/اقتراحات. ومع ذلك ، فإن الاستجابة ستكون متقطعة. يرجى توقع التأخير.
يرحب هذا المشروع بالمساهمات والاقتراحات. تطلب منك معظم المساهمات الموافقة على اتفاقية ترخيص المساهم (CLA) مع إعلان أن لديك الحق في ذلك في الواقع ، ويفعلنا في الواقع حقوق استخدام مساهمتك. لمزيد من التفاصيل ، تفضل بزيارة https://cla.opensource.microsoft.com.
عند إرسال طلب سحب ، سيحدد CLA Bot تلقائيًا ما إذا كنت بحاجة إلى توفير CLA وتزيين العلاقات العامة بشكل مناسب (على سبيل المثال ، فحص الحالة ، التعليق). ببساطة اتبع الإرشادات التي يقدمها الروبوت. ستحتاج فقط إلى القيام بذلك مرة واحدة عبر جميع عمليات إعادة الشراء باستخدام CLA لدينا.
اعتمد هذا المشروع رمز سلوك المصدر المفتوح Microsoft. لمزيد من المعلومات ، راجع مدونة الشهادة الأسئلة الشائعة أو الاتصال بـ [email protected] مع أي أسئلة أو تعليقات إضافية.
يهدف هذا المستودع إلى تسهيل البحث في التدريب على نطاق واسع لبيانات المحادثة. تحتوي مجموعة الأدوات هذه على جزء فقط من آلات النمذجة اللازمة لإنتاج ملف وزن النموذج فعليًا في مربع حوار تشغيل. من تلقاء نفسه ، يوفر هذا النموذج فقط معلومات حول أوزان تمتد النص المختلفة ؛ لكي يستخدم الباحث فعليًا ، سيحتاجون إلى إحضار بيانات المحادثة الخاصة بهم وفك تشفير توليد الاستجابة من النظام المسبق. Microsoft ليست مسؤولة عن أي جيل من استخدام الطرف الثالث للنظام المسبق.
إذا كنت تستخدم هذا الرمز في بحثك ، فيمكنك الاستشهاد بورقة Arxiv الخاصة بنا:
@inproceedings{zhang2019dialogpt,
title={DialoGPT: Large-Scale Generative Pre-training for Conversational Response Generation},
author={Yizhe Zhang and Siqi Sun and Michel Galley and Yen-Chun Chen and Chris Brockett and Xiang Gao and Jianfeng Gao and Jingjing Liu and Bill Dolan},
year={2020},
booktitle={ACL, system demonstration}
}