در ابتدا عرض کنم که اگر در کار با git حرفه ای هستید این مطلب نمیتواند برای شما مفید باشد، اما امیدوارم برای کسانی که میخواهند کار با git را شروع کنند مفید باشد.
اولین بار که میخواستم یک کد پایتون توی github را اجرا کنم با اینکه یک فایل readme وجود داشت که قدم به قدم اجرای کد رو توضیح داده بود اما من کاملا سردرگم و گیج شدم چون مفاهیم رو به خوبی نمیشناختم. شروع کردم به جستجو کردن، اولین مفهومی که باید یاد میگرفتم git بود، به یک سری ویدوهای 10و 15 تایی سنگین آموزش git میرسیدم که با توجه به وقتِ کوتاهِ من خیلی ناامید کننده بود. این روند ناامیدکنندهتر میشد وقتی دنبال یک آموزش برای "ویندوز" میگشتم. من در اون مقطع زمانی نمیخواستم کل git رو یاد بگیرم و فقط میخواستم ببینم چطور میتونم اون کد رو دانلود و اجرا کنم.
در نهایت بعد از پرسیدن از افراد مختلف به نتیجه خوبی رسیدم و چون اعتقاد دارم بهتره چیزهایی که یادم میگیریم رو در اختیار همدیگه قرار بدیم تا افراد دیگه بتونن اون میزان وقتی که ما صرف کردیم رو صرف یادگیری چیزهای بیشتر بکنند و در اختیار بقیه قرار بدن و این روند سالم ادامه پیدا کنه، تصمیم گرفتم چیزهایی که یاد گرفتم رو اینجا به اشتراک بگذارم.
همونطور که گفتم سری ویدئوهای یادگیری git معمولا سری های 10 تایی هستند که البته اگر میخواهید دانش کاملی داشته باشید حتما توصیه میشه که یکی از اون دوره ها رو انتخاب کنید و با حوصله دنبال کنید(که به عنوان مثال دوره ی git جادی جزو برنامههای خود بنده هم هست). اما من یک ویدئوی یک ساعتی در یوتوب پیدا کردم که خیلی مختصر مفاهیم اولیه git و نحوه استفاده از اون در ویندوز رو توضیح میده و چون دیدنش برای خودم تجربه ی خوبی بود به شما هم پیشنهاد میکنم ببینید:
https://www.youtube.com/watch?v=9vlNkLNc8P4
اما همونطور که ابتدا عرض کردم من دنبال نحوه ی اجرای یک نمونه کد github روی سیستم خودم(ویندوز) بودم، پس بعد از دیدن این ویدئو و آشنایی مختصر با git بریم سراغ اجرای یک نمونه کد github
لینک زیر یک کد با زبان پایتون در github است:
https://github.com/yicheng-w/CommonSenseMultiHopQA
یک فایل readme در آن وجود دارد که قدم به قدم نحوه ی اجرای کد را توضیح داده است، ما بر اساس آن فایل پیش میرویم و چیزهایی که باید برای اجرای هر قدم یاد بگیریم را میبینیم:
نیاز دارید کل repository رو clone کنید که با دیدن ویدئوی بالا به راحتی میتوانید انجام بدهید. کافیه یک فولدر در جایی که دوست دارید کد در اونجا قرار بگیره ایجاد کنید. روی اون فولدر با کلیک راست یک git bash بازکنید و دستور
git clone /* repository link*/
رو بزنید و اجازه بدید همه ی محتویات اون لینک دانلود بشه و در فولدر قرار داده بشه. برای پیدا کردن لینک repository میتوانید به صورت زیر عمل کنید.
برای ساخت دایرکتوریهای مورد نیاز برای اجرای کد، یک فایل setup.sh وجود دارد که باید اجرا شود. برای اجرای فایل sh. در ویندوز میتوانید ویدئوی زیر را مشاهده کنید و بر اساس آن فایل setup.sh را اجرا کنید:
https://www.youtube.com/watch?v=0AiqegwnskE
cd raw_data
git clone https://github.com/deepmind/narrativeqa.git
دو دیتاست و یک مدل نمایش داده Elmo در این پروژه استفاده شده است و دو راه برای دانلود دیتاها وجود دارد. استفاده از git clone و یا دانلود مستقیم.
برای دانلود دیتاست narrativeQA از git clone استفاده کنید. روی فولدر raw data کلیک راست کنید و یک git bash باز کنید و با دستور git clone و آدرس دیتای مورد نظر، آن را در فولدر raw data دانلود کنید. میتواندی به جای clone کردن آن را دستی دانلود کنید و در فولدر خواسته شده قرار دهید، که همانطور که در فایل readme نوشته شده است دانلود Wikihop و Elmo به صورت دستی انجام میشود.
python src/config.py
--mode build_dataset
--data_dir raw_data/narrativeqa
--load_commonsense
--commonsense_file data/cn_relations_orig.txt
--processed_dataset_train data/narrative_qa_train.jsonl
--processed_dataset_valid data/narrative_qa_valid.jsonl
--processed_dataset_test data/narrative_qa_test.jsonl
همانطور که در فایل readme نوشته شده است. در نهایت تنها نیاز است که برای ساخت دیتاست پردازش شده، آموزش مدل و ارزیابی مدل، چند فایل config.py که در فولدر src قرار دارد، به همراه آرگیومنتهای آنها را اجرا کنید(دقت کنید که تمام چیزهایی که بعد از -- میایند، همان آرگیومنت های فایل config.py هستند.)برای یادگیری چگونگی اجرای فایل py.در ویندوز میتوانید ویدئوی زیر را ببینید:
https://www.youtube.com/watch?v=n1Q8xs2YC8Q
و تمام.