tidak
SwiftChat adalah aplikasi obrolan AI yang cepat dan responsif yang dikembangkan dengan React Native dan didukung oleh Amazon Bedrock. Dengan filosofi desain minimalis dan perlindungan privasi yang kuat, perangkat ini menghadirkan percakapan streaming real-time dan kemampuan pembuatan gambar AI di seluruh platform Android, iOS, dan macOS.
Fitur Utama:
Secara default, kami menggunakan AWS App Runner , yang biasanya digunakan untuk meng-host server Python FastAPI, menawarkan kinerja tinggi, skalabilitas, dan latensi rendah.
Alternatifnya, kami menyediakan opsi untuk mengganti App Runner dengan AWS Lambda menggunakan URL Fungsi untuk solusi yang lebih hemat biaya, seperti yang ditunjukkan dalam contoh ini.
Pastikan Anda memiliki akses ke model pondasi Amazon Bedrock. Pengaturan default SwiftChat adalah:
us-west-2
Claude 3.5 Sonnet
Stable Image Core 1.0
Ikuti Panduan Pengguna Amazon Bedrock untuk mengaktifkan model Anda.
Masuk ke konsol AWS Anda dan klik kanan Parameter Store untuk membukanya di tab baru.
Periksa apakah Anda berada di wilayah yang didukung, lalu klik tombol Buat parameter .
Isi parameter di bawah ini, biarkan opsi lain sebagai default:
Nama : Masukkan nama parameter (misalnya, "SwiftChatAPIKey", akan digunakan sebagai ApiKeyParam
pada Langkah 2).
Ketik : Pilih SecureString
Nilai : Masukkan string apa pun tanpa spasi. (ini akan menjadi API Key
Anda di Langkah 3)
Klik Buat parameter .
Klik salah satu tombol berikut untuk meluncurkan CloudFormation Stack di wilayah yang sama tempat Kunci API Anda dibuat.
Pelari Aplikasi
Lambda (Catatan: Hanya untuk penggunaan pelanggan AWS)
Klik Berikutnya , Pada halaman "Tentukan detail tumpukan", berikan informasi berikut:
ApiKeyParam
dengan nama parameter yang Anda gunakan untuk menyimpan kunci API (misalnya, "SwiftChatAPIKey").InstanceTypeParam
berdasarkan kebutuhan Anda.Klik Berikutnya , Pertahankan halaman "Konfigurasi opsi tumpukan" sebagai default, Baca Kemampuan dan Centang kotak "Saya mengakui bahwa AWS CloudFormation mungkin membuat sumber daya IAM" di bagian bawah.
Klik Berikutnya , Di bagian "Tinjau dan buat" Tinjau konfigurasi Anda dan klik Kirim .
Tunggu sekitar 3-5 menit hingga penerapan selesai, lalu klik tumpukan CloudFormation dan buka tab Output , Anda dapat menemukan URL API yang terlihat seperti: https://xxx.xxx.awsapprunner.com
atau https://xxx.lambda-url.xxx.on.aws
Unduh Aplikasinya
Luncurkan Aplikasi, buka menu laci, dan ketuk Pengaturan .
Rekatkan API URL
dan API Key
lalu pilih Wilayah.
Klik ikon ✓ kanan atas untuk menyimpan konfigurasi Anda dan memulai obrolan Anda.
Selamat ? Aplikasi SwiftChat Anda siap digunakan!
Claude 3 Haiku
diaktifkan di wilayah pilihan Anda) Kecepatan Peluncuran Cepat
Kecepatan Permintaan Cepat
Kecepatan Render Cepat
useMemo
dan cache khusus untuk membuat cache sekunder untuk konten sesi? Kecepatan Penyimpanan Cepat
Pertama, kloning repositori ini. Semua kode aplikasi terletak di folder react-native
. Sebelum melanjutkan, jalankan perintah berikut untuk mengunduh dependensi.
cd react-native && npm i
npm start && npm run android
npm start && npm run ios
isMac = true
di /src/App.tsx
dan jalankan npm start
.ios/SwiftChat.xcworkspace
untuk membuka proyek di Xcode Anda.My Mac (Mac Catalyst)
lalu klik tombol ▶ Jalankan. Pertama, konfigurasikan API URL
dan API Key
Anda seperti:
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"
} '
API ini digunakan untuk mengimplementasikan percakapan streaming, dan hanya mengembalikan penggunaan teks dan token untuk ditampilkan.
messages
di bawah isi sepenuhnya mematuhi spesifikasi struktur pesan di API aliran konversi Amazon Bedrock. Anda juga dapat menambahkan image
atau document
sesuai spesifikasi untuk mendukung percakapan multimodal.
/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"
} '
API ini digunakan untuk menghasilkan gambar dan mengembalikan string gambar yang dikodekan 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 ini digunakan untuk mendapatkan daftar semua model teks dan model pembuatan gambar yang didukung streaming di wilayah tertentu.
/api/upgrade
curl " ${API_URL} /api/upgrade "
--header ' Content-Type: application/json '
--header ' accept: application/json '
--header " Authorization: Bearer ${API_KEY} "
API ini digunakan untuk mendapatkan versi baru SwiftChat untuk pembaruan Aplikasi Android dan macOS.
Kode klien: bedrock-api.ts
Kode server: main.py
Catatan : Setelah mengunduh versi baru, silakan periksa catatan rilis untuk melihat apakah pembaruan versi API diperlukan.
swiftchat-api
, klik tombol Deploy di kanan atas.SwiftChatLambda-xxx
, klik tombol Deploy new image dan klik Save. Lihat KONTRIBUSI untuk informasi lebih lanjut.
Perpustakaan ini dilisensikan di bawah Lisensi MIT-0. Lihat file LISENSI.