中文
SwiftChat هو تطبيق دردشة سريع وسريع الاستجابة يعمل بالذكاء الاصطناعي تم تطويره باستخدام React Native ومدعوم من Amazon Bedrock. بفضل فلسفة التصميم البسيطة وحماية الخصوصية القوية، فإنه يوفر محادثات متدفقة في الوقت الفعلي وقدرات إنشاء صور مدعومة بالذكاء الاصطناعي عبر منصات Android وiOS وmacOS.
الميزات الرئيسية:
افتراضيًا، نستخدم AWS App Runner ، والذي يُستخدم عادةً لاستضافة خوادم Python FastAPI، مما يوفر أداءً عاليًا وقابلية للتوسع وزمن وصول منخفض.
وبدلاً من ذلك، نوفر خيار استبدال App Runner بـ AWS Lambda باستخدام عنوان URL للوظيفة للحصول على حل أكثر فعالية من حيث التكلفة، كما هو موضح في هذا المثال.
تأكد من أنه يمكنك الوصول إلى نماذج مؤسسة Amazon Bedrock. الإعدادات الافتراضية لـ SwiftChat هي:
us-west-2
Claude 3.5 Sonnet
Stable Image Core 1.0
اتبع دليل مستخدم Amazon Bedrock لتمكين نماذجك.
قم بتسجيل الدخول إلى وحدة تحكم AWS الخاصة بك وانقر بزر الماوس الأيمن فوق Parameter Store لفتحه في علامة تبويب جديدة.
تحقق مما إذا كنت في المنطقة المدعومة، ثم انقر فوق الزر "إنشاء معلمة" .
قم بملء المعلمات أدناه، مع ترك الخيارات الأخرى كإعداد افتراضي:
الاسم : أدخل اسم المعلمة (على سبيل المثال، "SwiftChatAPIKey"، سيتم استخدامه كـ ApiKeyParam
في الخطوة 2).
النوع : حدد SecureString
القيمة : أدخل أي سلسلة بدون مسافات. (سيكون هذا هو API Key
الخاص بك في الخطوة 3)
انقر فوق إنشاء معلمة .
انقر فوق أحد الأزرار التالية لتشغيل CloudFormation Stack في نفس المنطقة التي تم إنشاء مفتاح API الخاص بك فيها.
عداء التطبيق
Lambda (ملاحظة: لاستخدام عملاء AWS فقط)
انقر فوق "التالي "، في صفحة "تحديد تفاصيل المكدس"، قم بتوفير المعلومات التالية:
ApiKeyParam
باسم المعلمة التي استخدمتها لتخزين مفتاح API (على سبيل المثال، "SwiftChatAPIKey").InstanceTypeParam
بناءً على احتياجاتك.انقر فوق التالي ، واحتفظ بصفحة "تكوين خيارات المكدس" كصفحة افتراضية، واقرأ القدرات وحدد مربع الاختيار "أقر بأن AWS CloudFormation قد ينشئ موارد IAM" في الأسفل.
انقر فوق "التالي" ، في "المراجعة والإنشاء"، قم بمراجعة التكوين الخاص بك وانقر فوق "إرسال" .
انتظر حوالي 3-5 دقائق حتى ينتهي النشر، ثم انقر فوق مكدس CloudFormation وانتقل إلى علامة التبويب "المخرجات" ، ويمكنك العثور على عنوان URL لواجهة برمجة التطبيقات الذي يبدو مثل: https://xxx.xxx.awsapprunner.com
أو https://xxx.lambda-url.xxx.on.aws
قم بتنزيل التطبيق
قم بتشغيل التطبيق، وافتح قائمة الدرج، ثم انقر فوق الإعدادات .
الصق API URL
API Key
ثم حدد المنطقة.
انقر فوق أيقونة ✓ العلوية اليمنى لحفظ التكوين الخاص بك وبدء الدردشة.
مبروك ؟ تطبيق SwiftChat الخاص بك جاهز للاستخدام!
Claude 3 Haiku
في المنطقة التي حددتها) سرعة الإطلاق السريعة
سرعة الطلب السريعة
سرعة التقديم السريعة
useMemo
والتخزين المؤقت المخصص لإنشاء ذاكرة تخزين مؤقت ثانوية لمحتوى الجلسة؟ سرعة تخزين سريعة
أولاً، قم باستنساخ هذا المستودع. كل كود التطبيق موجود في المجلد react-native
. قبل المتابعة، قم بتنفيذ الأمر التالي لتنزيل التبعيات.
cd react-native && npm i
npm start && npm run android
npm start && npm run ios
isMac = true
في /src/App.tsx
وقم بتنفيذ npm start
.ios/SwiftChat.xcworkspace
لفتح المشروع في Xcode الخاص بك.My Mac (Mac Catalyst)
ثم انقر فوق الزر ◀ Run (تشغيل). أولاً، يرجى تكوين API URL
ومفتاح واجهة برمجة API Key
مثل:
export API_URL= < API URL >
export API_KEY= < API Key >
/api/converse
curl -N " ${API_URL} /api/converse "
--header ' Content-Type: application/json '
--header " Authorization: Bearer ${API_KEY} "
--data ' {
"messages": [
{
"role": "user",
"content": [
{
"text": "Hi"
}
]
}
],
"modelId": "anthropic.claude-3-5-sonnet-20240620-v1:0",
"region": "us-west-2"
} '
يتم استخدام واجهة برمجة التطبيقات هذه لتنفيذ المحادثات المتدفقة، وتقوم فقط بإرجاع النص واستخدام الرمز المميز للعرض.
تتوافق messages
الموجودة أسفل النص بشكل كامل مع مواصفات بنية الرسائل في واجهة برمجة تطبيقات البث المباشر لـ Amazon Bedrock. يمكنك أيضًا إضافة image
أو document
وفقًا للمواصفات لدعم المحادثات متعددة الوسائط.
/api/image
curl " ${API_URL} /api/image "
--header ' Content-Type: application/json '
--header " Authorization: Bearer ${API_KEY} "
--data ' {
"prompt": "Beautiful countryside",
"modelId": "stability.stable-image-core-v1:0",
"region": "us-west-2",
"width": "1024",
"height": "1024"
} '
يتم استخدام واجهة برمجة التطبيقات هذه لإنشاء الصور وإرجاع سلسلة مشفرة من الصورة باستخدام base64.
/api/models
curl " ${API_URL} /api/models "
--header ' Content-Type: application/json '
--header ' accept: application/json '
--header " Authorization: Bearer ${API_KEY} "
--data ' {
"region": "us-west-2"
} '
يتم استخدام واجهة برمجة التطبيقات هذه للحصول على قائمة بجميع نماذج النصوص ونماذج إنشاء الصور المدعومة بالتدفق في المنطقة المحددة.
/api/upgrade
curl " ${API_URL} /api/upgrade "
--header ' Content-Type: application/json '
--header ' accept: application/json '
--header " Authorization: Bearer ${API_KEY} "
تُستخدم واجهة برمجة التطبيقات هذه للحصول على الإصدار الجديد من تحديثات تطبيق SwiftChat لنظامي التشغيل Android وmacOS.
رمز العميل: bedrock-api.ts
رمز الخادم: main.py
ملاحظة : بعد تنزيل إصدار جديد، يرجى التحقق من ملاحظات الإصدار لمعرفة ما إذا كان تحديث إصدار API مطلوبًا.
swiftchat-api
وافتحه، ثم انقر فوق زر النشر العلوي الأيمن.SwiftChatLambda-xxx
وافتحه، وانقر فوق الزر "نشر صورة جديدة" وانقر فوق "حفظ". انظر المساهمة لمزيد من المعلومات.
هذه المكتبة مرخصة بموجب ترخيص MIT-0. انظر ملف الترخيص.