? Tanyakan Klien Sage Python v1.2.4
Selamat datang di gudang Ikhtisar Ask Sage! ?
Repositori ini adalah proyek yang sedang dalam proses? dan dimaksudkan sebagai kumpulan kode contoh ? dan dokumentasi ? tentang berinteraksi dengan Ask Sage melalui Ask Sage API. Konten tambahan mungkin mencakup langkah-langkah sebenarnya? dalam platform Ask Sage, tetapi sebagian besar repositori ini akan fokus pada pemanfaatan API dan pembuatan proyek pembuktian konsep mini.
Contoh yang diberikan akan mencakup berbagai topik terkait AI generatif dan akan dirancang agar dapat diakses oleh pengguna dengan berbagai tingkat pengalaman dengan AI dan pemrograman. Saat ini kami telah menyediakan daftar ide tentang apa yang akan dibahas dalam repositori ini dan akan diperbarui seiring dengan semakin banyaknya konten yang ditambahkan.
Catatan: Hanya Ask Sage API yang tersedia untuk pelanggan berbayar. ??
Ini adalah upaya berbasis komunitas untuk menyediakan sumber daya tambahan dan contoh bagi pengguna Ask Sage.
Kunjungi situs resmi AskSage di sini.
Jika Anda tertarik untuk berkontribusi pada repositori ini, silakan lihat Pedoman Berkontribusi untuk informasi lebih lanjut.
Jika Anda memiliki pertanyaan atau memerlukan bantuan, jangan ragu untuk menghubungi pengelola repositori ini atau tim Ask Sage secara langsung.
Sumber daya tambahan:
Catatan: konten dalam repositori ini mungkin sudah ketinggalan jaman atau salah, jadi silakan merujuk ke dokumentasi resmi AskSage untuk informasi terkini.
AskSage adalah platform AI Generatif agnostik yang memberikan akses ke berbagai model dan alat AI. Platform ini dirancang agar mudah digunakan dan diintegrasikan ke dalam alur kerja yang ada yang selanjutnya dapat disesuaikan untuk memenuhi kebutuhan pengguna/organisasi.
Dirancang secara unik untuk menjadi agnostik, Ask Sage menyediakan akses ke berbagai model yang dapat digunakan untuk berbagai tugas. Beberapa model yang tersedia termasuk namun tidak terbatas pada:
Nama Model | Keterangan |
---|---|
Azure OpenAI | Model bahasa mutakhir yang dikembangkan oleh OpenAI dan dihosting di platform Azure. |
Azure Pemerintah OpenAI | Model bahasa mutakhir yang dikembangkan oleh OpenAI dan dihosting di platform Azure Gov. |
Google Gemini Pro | Model bahasa yang dikembangkan oleh Google dan dioptimalkan untuk berbagai tugas pemrosesan bahasa alami. |
LLMA3 | Model bahasa besar yang dikembangkan oleh Meta yang unggul dalam menghasilkan teks berkualitas tinggi. |
Mistral | Model bahasa canggih yang dikembangkan oleh Mistral yang dapat menghasilkan teks yang kreatif dan koheren. |
Claude 3 | Model bahasa yang dikembangkan oleh Anthropic yang berfokus pada pembuatan kode dan teks terkait pemrograman. |
Berpadu | Model bahasa yang dikembangkan oleh Cohere Technologies yang berspesialisasi dalam menghasilkan kode. |
Bisikan OpenAI | Model bahasa yang dikembangkan oleh OpenAI yang memungkinkan kemampuan ucapan-ke-teks. |
DALL-E v3 | Model bahasa yang dikembangkan oleh OpenAI yang berspesialisasi dalam menghasilkan gambar. |
Berikut adalah daftar sebenarnya model yang tersedia di platform Ask Sage per 22 Oktober 2024:
models = [ 'aws-bedrock-titan' , 'llma3' , 'claude2' , 'claude-3-opus' , 'claude-3-sonnet' , 'claude-35-sonnet' , 'cohere' , 'mistral-large' , 'gpt-gov' , 'gpt4-gov' , 'gpt' , 'gpt4' , 'gpt4-32k' , 'gpt35-16k' , 'gpt4-vision' , 'gpt-4o' , 'gpt-4o-mini' , 'dall-e-2' , 'dall-e-3' , 'google-bison' , 'google-gemini-pro' , 'gpt-4o-gov' , 'groq-70b' , 'gpt-o1' , 'gpt-o1-mini' , 'xai-grok' ]
Lebih banyak model dapat ditambahkan oleh tim Ask Sage yang khusus untuk kebutuhan pengguna. (biaya tambahan mungkin berlaku)
Catatan: Model yang tercantum di atas dapat berubah dan model lainnya mungkin ditambahkan di masa mendatang.
Ada dua cara utama untuk berinteraksi dengan Ask Sage:
Ask Sage API menyediakan antarmuka RESTful untuk berinteraksi dengan model yang tersedia melalui platform. Pengguna dapat mengirim permintaan ke API dan menerima respons dalam format JSON. API dirancang agar mudah digunakan dan diintegrasikan ke dalam alur kerja yang ada.
Secara keseluruhan, repositori ini akan memberikan petunjuk penyiapan, contoh, dan sumber daya lainnya saat seseorang mulai mengeksplorasi kemampuan AI Generatif dan bagaimana AI tersebut dapat digunakan dalam skenario dunia nyata.
Ask Sage API didokumentasikan menggunakan Swagger, yang memberikan informasi mendetail tentang titik akhir yang tersedia, parameter permintaan, format respons, dan metode autentikasi.
Tabel berikut menunjukkan titik akhir yang tersedia di User API:
Titik akhir | Keterangan |
---|---|
/dapatkan-token-dengan-api-key | Dapatkan token akses dengan Kunci API dan email |
/dapatkan-pengguna-login | Dapatkan login terakhir Anda (dibatasi 5 secara default) |
/dapatkan-log-pengguna | Dapatkan petunjuk terakhir Anda |
/tambahkan-kumpulan data | Tambahkan kumpulan data baru |
/assign-dataset | Tetapkan kumpulan data |
/hapus-kumpulan data | Menghapus kumpulan data |
Informasi ini digunakan untuk berinteraksi dengan Ask Sage API. Pengguna dapat membuat kueri model, memilih/mendapatkan persona, mendapatkan kumpulan data, melatih model, dan banyak lagi.
Tabel berikut menunjukkan titik akhir yang tersedia di Server API:
Titik akhir | Keterangan |
---|---|
/dapatkan-model | Mengembalikan daftar model yang tersedia melalui layanan Ask Sage |
/pertanyaan | Titik akhir utama untuk menghasilkan penyelesaian berdasarkan masukan pengguna |
/query_with_file | Kueri dengan titik akhir file untuk menghasilkan penyelesaian berdasarkan masukan pengguna |
/query-plugin | Kueri dengan titik akhir plugin untuk menghasilkan penyelesaian berdasarkan masukan pengguna |
/eksekusi-plugin | Jalankan plugin dengan konten yang disediakan |
/follow_up_questions | Titik akhir untuk menghasilkan pertanyaan tindak lanjut berdasarkan masukan pengguna |
/tokenizer | Titik akhir untuk mendapatkan token nilai string |
/dapatkan-persona | Titik akhir untuk mendapatkan token string |
/dapatkan-kumpulan data | Mengembalikan daftar kumpulan data yang tersedia |
/dapatkan-plugin | Mengembalikan daftar plugin yang tersedia |
/dapatkan kereta | Melatih model berdasarkan masukan pengguna |
/mengajukan | Mengonversi file yang didukung menjadi biasa/teks |
Klien Python API didokumentasikan dan dikelola melalui tautan berikut: https://pypi.org/project/asksageclient/
Nama Fungsi | Keterangan |
---|---|
get_models | Dapatkan model yang tersedia dari layanan Ask Sage. |
add_dataset | Menambahkan kumpulan data baru |
delete_dataset | Menghapus kumpulan data tertentu |
assign_dataset | Menetapkan kumpulan data |
get_user_logs | Mengambil semua log untuk pengguna |
get_user_logins | Mengambil informasi login untuk pengguna tertentu |
query | Berinteraksi dengan titik akhir /query dari Ask Sage API. |
query_with_file | Menjalankan kueri menggunakan file |
query_plugin | Menjalankan kueri menggunakan plugin tertentu |
execute_plugin | Menjalankan plugin dengan konten yang disediakan |
follow_up_questions | Berinteraksi dengan titik akhir /pertanyaan lanjutan dari Ask Sage API. |
tokenizer | Berinteraksi dengan titik akhir /tokenizer dari Ask Sage API. |
get_personas | Dapatkan persona yang tersedia dari layanan Ask Sage. |
get_datasets | Dapatkan kumpulan data yang tersedia dari layanan Ask Sage. |
get_plugins | Dapatkan plugin yang tersedia dari layanan Ask Sage. |
count_monthly_tokens | Dapatkan jumlah token pelatihan bulanan yang dibelanjakan untuk pengguna ini dari layanan Ask Sage. |
count_monthly_teach_tokens | Menghitung jumlah token pengajaran yang digunakan dalam sebulan |
train | Latih model berdasarkan konten yang disediakan. |
train_with_file | Latih kumpulan data berdasarkan file yang disediakan. |
file | Unggah file ke layanan Ask Sage. |
Di bagian Contoh, kami akan memberikan contoh cara menggunakan titik akhir ini untuk berinteraksi dengan Ask Sage API dan menghasilkan teks menggunakan model yang tersedia di platform.
Pengguna dapat memperoleh kunci API dari platform Ask Sage dan menggunakannya untuk menghasilkan token akses. Kunci API adalah pengidentifikasi unik yang digunakan untuk mengautentikasi pengguna dan memberikan akses ke titik akhir API.
Arahkan ke opsi menu dan pilih opsi 'Akun & Token'.
Gulir ke bawah ke bagian 'Kunci API' dan klik tombol 'Buat Kunci API'.
Buat Kunci API baru dengan memilih tombol 'Buat Kunci API baru'. Berikan nama unik untuk Kunci API dan klik tombol 'Kirim'.
Kunci API akan dibuat dan ditampilkan di layar. Salin Kunci API dan simpan di lokasi yang aman.
Ada tiga metode yang dapat digunakan pengguna untuk mengautentikasi dengan Ask Sage Endpoints:
Kunci API dan email dapat digunakan untuk mengautentikasi pengguna dan memberikan akses melalui Klien Ask Sage Python. Kunci API dan email pengguna akan disertakan dalam header permintaan.
Misalnya, cuplikan kode berikut menunjukkan cara membuat instance kelas AskSageClient dan mengautentikasi dengan Ask Sage API menggunakan kunci API dan email:
import json # Import the json module to work with JSON data
import requests # Import the requests library to send HTTP requests
from asksageclient import AskSageClient # Import the AskSageClient class from the asksageclient module
# Function to load credentials from a JSON file
def load_credentials ( filename ):
try :
with open ( filename ) as file :
return json . load ( file )
except FileNotFoundError :
raise FileNotFoundError ( "The credentials file was not found." )
except json . JSONDecodeError :
raise ValueError ( "Failed to decode JSON from the credentials file." )
# Load the credentials
credentials = load_credentials ( '../../credentials.json' )
# Extract the API key, and email from the credentials to be used in the API request
api_key = credentials [ 'credentials' ][ 'api_key' ]
email = credentials [ 'credentials' ][ 'Ask_sage_user_info' ][ 'username' ]
"""
class AskSageClient(
email: email, # The email address of the user
api_key: api_key, # The API key for the Ask Sage API, which can be obtained from the Ask Sage website
user_base_url: str = 'https://api.asksage.ai/user', # The base URL for the user API
server_base_url: str = 'https://api.asksage.ai/server' # The base URL for the server API
)
"""
ask_sage_client = AskSageClient ( email , api_key ) # Create an instance of the AskSageClient class with the email and api_key
Setelah pengaturan ini, pengguna sekarang dapat berinteraksi dengan Ask Sage API menggunakan objek AskSageClient.
Token akses dibuat menggunakan kunci API dan alamat email dengan titik akhir '/get-token-with-api-key'. Token akses berlaku selama 24 jam dan dapat digunakan untuk mengautentikasi permintaan ke Ask Sage API.
Ini adalah metode autentikasi yang lebih aman karena token akses hanya berlaku untuk waktu terbatas dan harus dibuat ulang secara berkala.
Berikut ini contoh cuplikan kode dengan Python yang menunjukkan cara mendapatkan token akses menggunakan alamat email dan kunci API Anda:
import requests
# Define the endpoint URL
url = "https://api.asksage.ai/user/get-token-with-api-key"
# Define the payload with the user's email and API key
payload = {
"email" : "your_email@your_domain.com" ,
"api_key" : "sdfsdfsfr23456789" # Your API key generated from the Ask Sage platform
}
# Set the headers, if required (e.g., Content-Type)
headers = {
"Content-Type" : "application/json"
}
# Make the POST request
response = requests . post ( url , json = payload , headers = headers )
# Check if the request was successful
if response . status_code == 200 :
# Parse the JSON response
data = response . json ()
# raw response
print ( data )
# Extract the access token only from the response
access_token = data [ 'response' ][ 'access_token' ]
print ( access_token )
Token akses yang dihasilkan dapat digunakan untuk mengautentikasi permintaan ke Ask Sage API selama 24 jam ke depan. Berikut adalah contoh cara menggunakan token akses untuk mengautentikasi permintaan ke salah satu titik akhir Ask Sage API:
import requests
# Define the access token obtained from the previous request - Note: You would want to store this securely and not hardcode it in your script/file.
access_token = "fghjkl4567890" # Replace with the actual access token
# Define the endpoint URL
url = "https://api.asksage.ai/user/get-user-logins" # Replace with the actual base URL of the API
# Define the payload with the limit parameter
payload = {
"limit" : 1 # Replace with the desired limit (max is 100)
}
# Set the headers, including the Authorization header with the Bearer token
headers = {
"x-access-tokens" : access_token ,
"Content-Type" : "application/json"
}
# Make the POST request
response = requests . post ( url , json = payload , headers = headers )
# Check if the request was successful
if response . status_code == 200 :
# Parse the JSON response
data = response . json ()
print ( "User Logins:" , data )
else :
print ( f"Failed to get user logins. Status code: { response . status_code } " )
print ( f"Response: { response . text } " )
Daripada membuat token akses setiap kali Anda perlu mengakses API, Anda dapat meneruskan kunci API statis ke tempat token tersebut diharapkan. Ini tidak seaman membuat token akses 24 jam, namun ini merupakan opsi yang valid untuk beberapa kasus penggunaan.
Catatan: Variabel header yang diharapkan adalah
x-access-tokens
dan nilainya adalah kunci API. Tidak ada batasan waktu pada kunci API, namun disarankan untuk membuat ulang secara berkala demi alasan keamanan.
import requests
# Define the access token obtained from the previous request - Note: You would want to store this securely and not hardcode it in your script/file.
access_token = api_key #
# Define the endpoint URL
url = "https://api.asksage.ai/user/get-user-logins" # Replace with the actual base URL of the API
# Define the payload with the limit parameter
payload = {
"limit" : 1 # Replace with the desired limit (max is 100)
}
# Set the headers, including the Authorization header with the Bearer token
headers = {
"x-access-tokens" : access_token ,
"Content-Type" : "application/json"
}
# Make the POST request
response = requests . post ( url , json = payload , headers = headers )
# Check if the request was successful
if response . status_code == 200 :
# Parse the JSON response
data = response . json ()
print ( "User Logins:" , data )
else :
print ( f"Failed to get user logins. Status code: { response . status_code } " )
print ( f"Response: { response . text } " )
Contoh-contoh ini akan lebih fokus pada bagaimana seseorang dapat berinteraksi dengan Ask Sage API dan apa yang diharapkan dari responsnya. Selain itu, beberapa proyek mini akan dibuat untuk menunjukkan kemampuan AI Generatif dan bagaimana AI tersebut dapat digunakan dalam skenario dunia nyata. Meskipun repositori ini berfokus pada Ask Sage API, contohnya akan cukup umum untuk diterapkan pada platform lain yang menyediakan layanan serupa tetapi mungkin memiliki titik akhir atau parameter berbeda.
Catatan: Contoh saat ini lebih fokus pada model berbasis teks namun akan diperluas ke interaksi LLM dengan tipe data lain seperti gambar, audio, dan video (model multi-modal). Melihat contoh-contoh tersebut akan menghasilkan proyek yang lebih kompleks dan memerlukan lebih banyak sumber daya dan waktu untuk menyelesaikannya.
Setelah menginstal paket dari requirements.txt
, Anda mungkin perlu memulai ulang kernel Jupyter untuk menggunakan paket yang diperbarui. Hal ini memastikan bahwa perpustakaan yang baru diinstal dimuat dengan benar.
✅ Selesai ✅
Ini sebenarnya bukan sebuah contoh, namun lebih merupakan diskusi mengenai implikasi etis penggunaan AI dan cara memitigasi potensi risiko. Kami sangat menekankan bahwa pengguna perlu dilatih dengan baik tentang cara kerja AI, namun kami juga memberikan pemahaman yang jelas bahwa apa yang dihasilkan melalui alat GenAI mungkin tidak selalu benar.
✅ Selesai ✅
Contoh ini akan membahas cara menggunakan titik akhir Ask Sage API dan apa yang diharapkan dari respons tingkat tinggi. Contoh berikut akan menunjukkan bagaimana titik akhir dapat digunakan dalam skenario dunia nyata untuk membuat aplikasi, alat, atau layanan yang berguna.
? Dalam Konstruksi? -> Rilis Penuh Segera Hadir!
Contoh ini akan mencakup cara berinteraksi dengan model LLM dan cara menggunakan rekayasa cepat untuk menghasilkan teks berkualitas tinggi yang akan digunakan untuk memandu model dalam menghasilkan keluaran yang diinginkan. Rekayasa cepat adalah keterampilan yang kuat dan diperlukan yang dapat digunakan untuk mengontrol keluaran model bahasa dan menghasilkan teks yang memenuhi kriteria atau persyaratan tertentu.
? Dalam Konstruksi?
Sebagian besar, model LLM dilatih pada kumpulan data besar yang berisi berbagai macam teks dari berbagai sumber dan tidak dijamin relevan dengan kebutuhan spesifik pengguna. Namun, di Ask Sage, pengguna dapat membuat kumpulan data khusus yang berisi teks yang relevan dengan domain atau kasus penggunaan mereka dan menggunakannya dengan metode seperti Retrieval-Augmented Generation (RAG) untuk meningkatkan performa model. Oleh karena itu, contoh ini akan mencakup cara membuat kumpulan data khusus dan menggunakannya dengan model LLM untuk menghasilkan teks yang lebih relevan dengan kebutuhan pengguna. Informasi lebih rinci akan diberikan dalam contoh tentang cara kerja model/integrasi dengan kumpulan data.
? Dalam Konstruksi?
Jumlah model LLM yang tersedia saat ini sangat banyak dan akan terus bertambah seiring dengan semakin banyaknya penelitian yang dilakukan di bidang AI generatif. Contoh ini akan mencakup cara membandingkan model LLM yang berbeda menggunakan metode API agnostik Ask Sage, dan mengevaluasi kinerjanya berdasarkan berbagai kriteria seperti kualitas teks, koherensi, kreativitas, dan banyak lagi. Pengguna dapat menggunakan informasi ini untuk memilih model terbaik untuk kebutuhan mereka dan membuat keputusan tentang model mana yang akan digunakan dalam proyek mereka.
Untuk pergi ke bagian ini klik Membandingkan Model LLM
? Dalam Konstruksi?
Ini adalah proyek unik dan mungkin akan ketinggalan jaman di masa mendatang, namun LLM adalah model berbasis teks yang menghasilkan teks berdasarkan masukan yang diberikan oleh pengguna, namun bagaimana jika kita ingin membuat diagram tanpa harus membuatnya secara manual? Misalnya saja kita menginginkan diagram alur, peta pikiran, diagram Gantt, atau jenis diagram lainnya. Contoh ini akan membahas bagaimana kita menggunakan Mermaid.js, alat pembuatan diagram berbasis teks untuk menghasilkan diagram berdasarkan teks yang dihasilkan oleh model LLM.
Untuk menuju ke bagian ini klik Pembuatan Diagram Dengan LLM
? Dalam Konstruksi?
Bagaimana dengan kemampuan menerapkan model LLM pada perangkat edge seperti Raspberry Pi atau Jetson Nano? Contoh ini akan membahas cara menerapkan model LLM pada perangkat edge dan menghasilkan teks menggunakan Ask Sage API.
Untuk pergi ke bagian ini klik LLM Deployment On A Edge Device
? Dalam Konstruksi?
Bagaimana kita mengevaluasi kinerja model LLM dan memantau kemajuannya dari waktu ke waktu? Contoh ini akan mencakup cara membuat dasbor yang menampilkan metrik dan wawasan utama tentang model LLM. Pengguna dapat menggunakan dasbor ini untuk melacak performa model dan membuat keputusan yang tepat tentang cara meningkatkannya seiring waktu.
Namun pertama-tama, kita akan menggunakan alat sumber terbuka @arize-ai phoenix untuk membuat dasbor yang menampilkan metrik dan wawasan utama tentang model LLM.
? Dalam Konstruksi?
Mari kita buat jaringan chatbot yang dapat berkomunikasi satu sama lain dan menghasilkan teks berdasarkan keluaran masing-masing. Contoh ini akan membahas cara membuat jaringan chatbot menggunakan model LLM dan mensimulasikan percakapan antar chatbot. Pengguna dapat menggunakan jaringan ini untuk menghasilkan teks kreatif dan menarik yang dapat digunakan dalam berbagai aplikasi, skenario, dan kasus penggunaan pemodelan.
Untuk pergi ke bagian ini klik LLM Chatbot Network
Di sini kami menyediakan daftar contoh tambahan yang berasal dari pengguna yang menanyakan contoh atau kasus penggunaan spesifik. Jika Anda memiliki contoh spesifik atau kasus penggunaan yang ingin Anda lihat, silakan hubungi kami dan kami akan melakukan yang terbaik untuk membuat contoh yang memenuhi kebutuhan Anda. Cara terbaik untuk menghubungi kami adalah dengan bergabung dengan server perselisihan kami dan memposting permintaan Anda di sana Discord - Tanya Sage :
AskSage API dapat mengembalikan kesalahan dalam situasi tertentu, seperti ketika permintaan yang tidak valid dibuat atau ketika batas kapasitas terlampaui. Pengguna harus memahami kode kesalahan dan pesan yang dikembalikan oleh API dan menanganinya dengan tepat dalam kode mereka.
Berikut beberapa praktik terbaik yang perlu diingat saat bekerja dengan Ask Sage API:
Kami akan memberikan dokumen pdf tambahan yang berisi sumber daya terkait GenerativeAI (GenAI). Dokumen ini akan menyertakan link ke artikel, buku, tutorial, video, dan konten lainnya yang mungkin berguna bagi pengguna yang tertarik untuk mempelajari lebih lanjut tentang AI generatif dan cara menggunakannya secara efektif.
Tujuan kami adalah menyediakan daftar lengkap sumber daya yang mencakup berbagai topik terkait AI generatif, termasuk pemrosesan bahasa alami, visi komputer, pembelajaran penguatan, dan banyak lagi. Kami juga akan menyertakan sumber daya yang mencakup model dan alat spesifik yang umum digunakan di bidang AI generatif.
Jika Anda mempunyai saran mengenai sumber daya yang dapat disertakan dalam dokumen ini, jangan ragu untuk menghubungi kami dan kami akan melakukan yang terbaik untuk menambahkannya ke dalam daftar.
Selamat belajar! ?
Kami akan memberikan daftar kosakata yang penting untuk diketahui saat bekerja dengan Generative AI atau Machine Learning. Istilah-istilah ini akan membantu pengguna memahami terminologi yang digunakan di bidang AI/Machine Learning dan cara menerapkannya dalam proyek mereka.
Misalnya, berikut beberapa istilah yang perlu diketahui saat bekerja dengan AI Generatif:
Untuk melihat daftar lengkap definisi, klik Definisi yang Perlu Diketahui
Berikut adalah beberapa fitur atau penyempurnaan yang kami ingin lihat ditambahkan ke Ask Sage API:
Setiap item akan memiliki link ke contoh yang akan dibuat untuk menunjukkan di mana fitur atau penyempurnaan dapat digunakan.
Setiap bug atau masalah yang ditemukan di Ask Sage API harus dilaporkan langsung ke tim Ask Sage. Jika Anda mengalami masalah apa pun dengan API, silakan hubungi tim Ask Sage untuk mendapatkan bantuan. Selain itu, Anda dapat melaporkan bug atau masalah di repositori ini dan kami akan menguji dan memverifikasinya sebelum meneruskannya ke tim Ask Sage.
Repositori ini dilisensikan di bawah Lisensi MIT. Lihat file LISENSI untuk informasi lebih lanjut.