قاموس يمكنك تشغيله إلى جانب تطبيقك
Vocab Bloom Hub قاموس إنجليزي مستضاف ذاتيًا — 300 000 مدخل بمعانيها وأمثلتها وصيغها الصرفية وترجماتها إلى الروسية والإسبانية والفرنسية والألمانية والبرتغالية والصينية والعربية — خلف واجهة API عامة للقراءة فقط، مع حزم SDK وواجهة إدارة ومجموعة بيانات منشورة. أمر واحد للتثبيت، ورخصة MIT للشيفرة، وCC BY 4.0 للبيانات.
التثبيت بأمر واحد
يكفي ملف compose وقالب متغيرات البيئة: تُسحب الصور من GitHub Container Registry، ويبدأ Postgres معها، ويحمّل القاموس نفسه عند التشغيل الأول.
mkdir vocab-bloom-hub && cd vocab-bloom-hub
curl -fsSLO https://raw.githubusercontent.com/Fristail27/vocab-bloom-hub/main/docker-compose.yml
curl -fsSL https://raw.githubusercontent.com/Fristail27/vocab-bloom-hub/main/.env.example -o .env
# edit .env: ADMIN_PASSWORD, POSTGRES_PASSWORD
docker compose up -d
curl -s localhost:3010/api/ready # {"status":"ok"} once the dictionary is in
ما الذي تحصل عليه
واجهة API عامة
مُرقَّمة الإصدارات، للقراءة فقط، دون تسجيل دخول: بحث يتسامح مع الأخطاء الإملائية، وكلمات رئيسية بمعانيها وصيغها وترجماتها ومرادفاتها وأضدادها، واستعلام دفعي، وقوائم مقسّمة إلى صفحات بمؤشر، ومدخل عشوائي — كل إجابة في غلاف واحد، ومخزّنة مؤقتًا بواسطة ETag.
حزم SDK
عملاء بأنواع محدَّدة لـ Node.js / TypeScript وPython مولَّدون من مستند OpenAPI نفسه: دالة لكل نقطة نهاية، وتكرار بالمؤشر، وأخطاء بأنواع محدَّدة، وذاكرة تخزين مؤقت بـ ETag، وإعادة محاولة اختيارية، وDataFrame للدفاتر التفاعلية.
واجهة الإدارة
حرّر الكلمات والمعاني والترجمات والمرادفات والأضداد في المتصفح، وتابع الإحصاءات، واستورد القاموس بأكمله وصدّره كمجموعة بيانات.
مجموعة البيانات
يُنشر القاموس على HuggingFace برخصة CC BY 4.0 ويحمّل نفسه في أي نسخة فارغة؛ وتنقله عمليات التصدير بين البيئات، بما فيها البيئات غير المتصلة بالإنترنت.
مصمَّم للمشغّلين
مسابير الصحة والجاهزية، وإيقاف سلس، وترحيلات عند التشغيل، ومقاييس Prometheus، وسجلات JSON منظّمة بمعرّف للطلب — كل ما تحتاجه خدمة ليشغّلها شخص آخر.
البحث
مستويات للمطابقة التامة والبادئة والتقريبية والترجمة على فهارس Postgres: القراءات الأكثر تكرارًا تُجاب خلال ميلي ثوانٍ على القاموس الكامل.
حزمتا SDK، عقد واحد
كلا العميلين مولَّد من مستند OpenAPI المُودَع في المستودع لواجهة API العامة، فلا ينحرفان أبدًا عن الخادم.
Node.js / TypeScript
import { VocabBloomClient } from '@vocab-bloom-hub/client';
const client = new VocabBloomClient({ baseUrl: 'https://your-instance.example/api' });
const { data } = await client.search({ search: 'runing', limit: 5 }); // typo tolerant
const run = await client.word('run'); // every part of speech, forms, meanings, translations
for await (const word of client.iterateWords({ part_of_speech: ['verb'], word_level: ['b1'] })) {
console.log(word.word);
}
Python
from vocab_bloom_hub import VocabBloomClient
client = VocabBloomClient("https://your-instance.example/api")
hits = client.search("runing", limit=5) # typo tolerant
run = client.word("run") # forms, meanings, translations
for word in client.iter_words(part_of_speech=["verb"], word_level=["b1"]):
print(word.word)
df = client.words_dataframe(part_of_speech=["noun"]) # pip install "vocab-bloom-hub[pandas]"
البيانات والرخصة
الشيفرة برخصة MIT. أما بيانات القاموس — التي تقدّمها واجهة API، وتُصدَّر كمجموعات بيانات، وتُنشر على HuggingFace — فهي برخصة CC BY 4.0: حرة الاستخدام والتعديل، تجاريًا أيضًا، مع نسب العمل إلى مصدره. وهي في معظمها مولَّدة بنماذج لغوية كبيرة (LLM) ولم يراجعها بشر؛ اقرأ ما يعنيه ذلك قبل الاعتماد عليها.