Views
No views yet
1# Cell 1 — شغّلها مرة وحدة فقط لإنشاء ملفات المكتبة
2# (انسخ كود Cell 1 من الـ notebook)
3
4# Cell 2 — تثبيت المكتبة
5import sys
6sys.path.insert(0, '/kaggle/working/datac_lib')
7!pip install -e /kaggle/working/datac_lib --quiet1import sys
2sys.path.insert(0, '/kaggle/working/datac_lib')
3from datac import DataC
4
5dc = DataC(
6 github_api = 'YOUR_GITHUB_TOKEN', # اختياري — للأكواد فقط
7 sci_model = '/path/to/sci_scorer', # اختياري — للتصفية الذكية
8 sci_threshold = 0.7 # حد القبول (0.0 → 1.0)
9)dc.fetch() — الأمر الرئيسي1dc.fetch(
2 keyword = 'quantum mechanics', # كلمة البحث
3 data_type = 'text', # 'text' أو 'code'
4 language = 'python', # للكود فقط
5 count = 100, # عدد العينات المطلوبة
6 save_path = './output', # مجلد الحفظ
7 model_train = False, # True لتدريب نموذج تلقائياً
8 model = 'SGDClassifier' # اسم النموذج للتدريب
9)1# ── نصوص علمية ───────────────────────────────────────────
2dc.fetch(
3 keyword = 'algebraic topology',
4 data_type = 'text',
5 count = 200,
6 save_path = './data'
7)
8
9# ── أكواد Python ──────────────────────────────────────────
10dc.fetch(
11 keyword = 'machine learning',
12 data_type = 'code',
13 language = 'python',
14 count = 100,
15 save_path = './data'
16)
17
18# ── نصوص + تدريب نموذج تلقائي ────────────────────────────
19dc.fetch(
20 keyword = 'deep learning',
21 data_type = 'text',
22 count = 500,
23 save_path = './data',
24 model_train = True,
25 model = 'LogisticRegression'
26)| المصدر | النوع | API Key | الحد الأقصى لكل طلب |
|---|---|---|---|
| ArXiv | نصوص علمية | ❌ مجاني | 100 |
| PubMed | طب وبيولوجيا | ❌ مجاني | 200 |
| Semantic Scholar | متعدد التخصصات | ❌ مجاني | 100 |
| OpenAlex | متعدد التخصصات | ❌ مجاني | 200 |
| GitHub | أكواد برمجية | ✅ مطلوب | 100 |
لجلب كميات أكبر — فقط ارفعcountوالمكتبة تتعامل مع الـ rate limits تلقائياً
1model = 'SGDClassifier' # سريع — مناسب للبيانات الكبيرة
2model = 'LogisticRegression' # دقيق — مناسب للبيانات المتوسطة
3model = 'RandomForest' # قوي — أبطأ لكن أدق
4model = 'LinearRegression' # للانحدار (قيم مستمرة)1from datac import SciScorer
2
3scorer = SciScorer(
4 model_path = '/path/to/model',
5 threshold = 0.7
6)
7
8# تقييم نص واحد
9score = scorer.score('Quantum entanglement in neural networks')
10print(score) # 0.95
11
12# هل النص مهم؟
13scorer.is_important('Celebrity news today') # False
14
15# تصفية قائمة
16filtered = scorer.filter_batch([
17 ('Algebraic topology...', {'title': '...', 'url': '...'}),
18 ('Top 10 movies...', {'title': '...', 'url': '...'}),
19])1from datac import AutoTrainer
2
3trainer = AutoTrainer(model='LogisticRegression')
4
5# تدريب
6metrics = trainer.train(
7 data = [{'content': 'text...', 'label': 1}, ...],
8 save_path = './my_model'
9)
10print(metrics) # {'accuracy': 0.94, 'samples': 500}
11
12# تنبؤ
13trainer.predict('Schrödinger equation...') # 1 (مهم)
14trainer.predict('Best restaurants NYC...') # 0 (مو مهم)save_path/
├── {keyword}_texts.jsonl ← النصوص (سطر = عينة)
├── {keyword}_code.json ← الأكواد
└── trained_model/
└── model.pkl ← النموذج المدرب1{"title": "Topological spaces...", "url": "https://arxiv.org/...", "content": "..."}
2{"title": "Hopf algebra...", "url": "https://arxiv.org/...", "content": "..."}1[
2 {"source": "repo_name", "filename": "main.py", "url": "...", "content": "..."},
3 ...
4]صُنع بـ ❤️ لتسهيل جمع البيانات العلمية والتقنية