Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:✅Database SQL di Microsoft Fabric
Artikel ini menjelaskan cara menggunakan database SQL di Fabric untuk membangun aplikasi yang didukung AI yang menggabungkan data transaksional dengan model bahasa besar (LLM), pencarian vektor, atau pola pembuatan tertambah pengambilan (RAG).
Database SQL di Fabric menyediakan fondasi relasional untuk aplikasi cerdas: transaksi ACID, kueri berlatensi rendah, tipe data dan fungsi vector native, serta integrasi erat dengan platform analitik dan AI Fabric yang lebih luas.
Mengapa database SQL di Fabric untuk aplikasi AI?
Membangun aplikasi cerdas memerlukan database yang dapat menyimpan data operasional bersama penyematan vektor, melayani kueri transaksional dan kesamaan pada latensi rendah, dan terintegrasi dengan kerangka kerja orkestrasi AI. Database SQL di Fabric memenuhi persyaratan berikut:
- Dukungan vektor native: tipe data vektor native dan fungsi skalar vektor milik SQL Database Engine memungkinkan Anda menyimpan embedding dan menjalankan pencarian kemiripan langsung di T-SQL, tanpa database vektor terpisah.
- Arsitektur siap RAG: Gabungkan data bisnis terstruktur Anda dengan penyematan vektor dalam database yang sama, sehingga kueri pengambilan dapat menggabungkan konteks relasional (catatan pelanggan, riwayat pesanan, katalog produk) dengan hasil pencarian semantik dalam satu kueri.
- integrasi Framework: Terhubung dengan LangChain dan Kernel Semantik melalui konektor SQL Server yang ada untuk membangun alur kerja AI yang diatur.
- Integrasi platform Fabric: Akses data SQL Anda dari Notebook Fabric, beban kerja ilmu data, dan pengalaman Copilot tanpa memindahkan data ke luar platform.
- tata kelola Enterprise: autentikasi Microsoft Entra ID, keamanan tingkat ruang kerja, dan enkripsi kunci yang dikelola pelanggan berlaku untuk beban kerja AI sama dengan beban kerja operasional lainnya.
Tip
Untuk contoh pelanggan nyata tentang penggunaan database SQL Fabric untuk memproses data dan menghasilkan penyematan vektor, lihat Kisah pelanggan: Eastman menyatukan data dan membangun masa depan berbasis AI dengan Microsoft Fabric.
Retrieval-augmented generation (RAG) (generasi yang ditambah dengan pengambilan informasi)
RAG meningkatkan respons LLM dengan mengambil data yang relevan dari database Anda sebelum menghasilkan jawaban. Alih-alih hanya mengandalkan data pelatihan model, aplikasi melakukan kueri pada data operasional Anda untuk mendasarkan respons pada fakta terkini yang spesifik untuk domain tersebut. Untuk ikhtisar komprehensif, lihat Retrieval-augmented generation (RAG).
Pola RAG umum dengan database SQL di Fabric mengikuti langkah-langkah berikut:
- Bagian: Bagi sumber data berukuran besar (dokumen, artikel basis pengetahuan, katalog produk) menjadi bagian-bagian yang lebih kecil dan mudah dikelola, lalu ubah menjadi teks biasa.
- Embed: Menghasilkan penyematan vektor untuk setiap gugus dengan menggunakan Azure OpenAI atau model penyematan lainnya.
- Simpan: Sisipkan penyematan ke dalam tabel dengan kolom vektor bersama teks sumber dan metadata relasional apa pun.
- Ambil: Saat pengguna mengajukan pertanyaan, sematkan kueri dengan model yang sama, lalu gunakan VECTOR_DISTANCE untuk menemukan potongan yang paling mirip. Bergabung dengan tabel relasional untuk memperkaya konteks.
- Augment: Gabungkan segmen yang diambil dengan pertanyaan asli pengguna ke dalam prompt yang memberi instruksi kepada LLM tentang cara menggunakan konteks.
- Hasilkan: Kirim prompt yang diperkaya ke LLM, yang menghasilkan respons berdasarkan data yang diambil.
Pencarian vektor hibrid dalam database transaksional
Karena penyematan dan data relasional berada dalam database yang sama, Anda dapat memfilter menurut atribut relasional (rentang tanggal, kategori, izin akses) dalam kueri yang sama, meningkatkan relevansi dan keamanan. Anda dapat menggabungkan pencarian vektor dengan filter SQL tradisional (WHERE) untuk hasil yang difilter pada hubungan transaksional dan fungsi vektor. Contohnya:
-- Hybrid search: vector similarity filtered by product category
SELECT TOP (5) p.product_name, p.description
, cosine_distance = VECTOR_DISTANCE('cosine', @query_embedding, p.embedding)
FROM dbo.products AS p
WHERE p.category = 'Electronics'
ORDER BY VECTOR_DISTANCE('cosine', @query_embedding, p.embedding);
Pola ini berguna untuk rekomendasi produk, pencarian pangkalan pengetahuan, dan skenario dukungan pelanggan di mana hasilnya perlu relevan secara semantik dan dibatasi oleh aturan bisnis.
Anda juga dapat mengkueri dengan sintaks VECTOR_SEARCH T-SQL yang lebih baru, untuk menemukan perkiraan hasil tetangga terdekat. Contohnya:
DECLARE @qv VECTOR(1536) = AI_GENERATE_EMBEDDINGS(N'Pink Floyd music style' USE MODEL Ada2Embeddings);
SELECT TOP (10) WITH APPROXIMATE
t.id,
t.title,
r.distance
FROM VECTOR_SEARCH(
TABLE = dbo.wikipedia_articles_embeddings AS t,
COLUMN = content_vector,
SIMILAR_TO = @qv,
METRIC = 'cosine'
) AS r
ORDER BY r.distance;
Agen AI dengan server Fabric MCP
Fabric menawarkan MCP Lokal Fabric sumber terbuka dan server MCP Jarak Jauh Fabric untuk agen AI. Server ini menyediakan autentikasi langsung dan instruksi untuk operasi yang telah ditentukan sebelumnya, seperti pengelolaan ruang kerja, item CRUD dan definisinya, serta pengelolaan izin.
Kedua opsi server MCP Fabric dapat digunakan dengan klien apa pun yang kompatibel dengan MCP, termasuk GitHub Copilot, Cursor, Claude Desktop, dan banyak lagi. Misalnya, ekstensi Fabric MCP Server untuk Visual Studio Code berfungsi dengan ekstensi Microsoft Fabric dan ekstensi gitHub Copilot Chat. Dengan menggunakan ekstensi ini, Anda dapat mengakses alat MCP Fabric dalam obrolan GitHub Copilot, dan menggunakan agen untuk mengelola item Fabric, seperti membuat dan mengelola database SQL Fabric Anda.
- Server MCP Lokal Fabric berjalan secara lokal di komputer Anda, agar agen AI mendapatkan konteks yang mereka perlukan untuk menghasilkan kode dan membuat item tanpa mengakses lingkungan Anda.
- Server FABRIC Remote MCP adalah server yang dihosting cloud yang memungkinkan agen AI melakukan operasi yang disiapkan dan diautentikasi di lingkungan Fabric Anda tanpa memerlukan penyiapan lokal.
Alat AI menggunakan server MCP Fabric untuk menulis kode dengan API yang benar dan dalam batas RBAC yang benar yang sudah Anda percayai.
Misalnya, setelah menyiapkan server MCP lokal Fabric dengan cepat, Anda dapat mengajukan pertanyaan tentang infrastruktur dan memberikan tugas kepada chat GitHub Copilot di Visual Studio Code dalam mode Agent. Contohnya:
List all SQL databases and mirrored SQL databases in the Fabric workspace "DemoSQLdb".
Agen Anda menggunakan perintah API Fabric yang diketahui untuk mengembalikan semua item Fabric dari jenis tersebut.
Create a new SQL database in Fabric named "ContosoTest" in the Fabric workspace "DemoSQLdb".
Agen Anda menggunakan perintah API Fabric yang diketahui untuk membuat item database untuk Anda, dengan pengaturan default.
Agen AI dengan SQL MCP Server
SQL MCP Server menyediakan antarmuka Protokol Konteks Model yang dapat digunakan agen AI untuk berinteraksi dengan database Anda melalui API berbasis alat yang diatur alih-alih menghasilkan SQL mentah. Server:
- Mengekspos sekumpulan alat yang ditentukan yang didukung oleh konfigurasi Anda.
- Memberlakukan izin dan batasan secara konsisten.
- Memungkinkan agen menemukan kemampuan yang tersedia tanpa menebak skema.
Pola ini berguna untuk membangun agen otonom yang dapat mengkueri dan memperbarui data operasional sebagai bagian dari alur kerja multistep.
SQL MCP Server menggunakan abstraksi entitas Data API builder, RBAC, cache, dan telemetri untuk menghadirkan antarmuka yang siap untuk produksi dan bekerja secara konsisten di REST, GraphQL, dan MCP. Anda mengonfigurasinya sekali, dan mesin menangani sisanya.
Ekstensi MSSQL untuk Visual Studio Code menyertakan UI terintegrasi untuk Data API builder, sehingga Anda dapat membuat titik akhir REST, GraphQL, dan MCP untuk tabel database SQL Anda tanpa menulis file konfigurasi atau meninggalkan Visual Studio Code. Anda dapat memilih tabel mana yang akan diekspos, mengonfigurasi izin CRUD, memilih jenis API, mempratinjau konfigurasi yang dihasilkan, dan menyebarkan backend lokal yang didukung oleh pembuat API Data, semuanya dari antarmuka visual.
Pengayaan dengan Azure OpenAI
SQL Database Engine menyediakan fungsi T-SQL bawaan untuk menghasilkan penyematan dan penggugusan teks langsung dalam database, tanpa kode eksternal atau alur.
Daftarkan model penyematan
Gunakan BUAT MODEL EKSTERNAL untuk mendaftarkan titik akhir penyematan OpenAI Azure sebagai objek database. Contoh ini menggunakan penyebaran text-embedding-ada-002 dengan autentikasi identitas terkelola Microsoft Entra. Pertama, buat kredensial akses ke Azure OpenAI menggunakan identitas terkelola:
CREATE DATABASE SCOPED CREDENTIAL [https://my-azure-openai-endpoint.cognitiveservices.azure.com/]
WITH IDENTITY = 'Managed Identity',
SECRET = '{"resourceid":"https://cognitiveservices.azure.com"}';
GO
Kemudian, buat model eksternal:
CREATE EXTERNAL MODEL MyEmbeddingModel
WITH (
LOCATION = 'https://my-openai.cognitiveservices.azure.com/openai/deployments/text-embedding-ada-002/embeddings?api-version=2024-02-01',
API_FORMAT = 'Azure OpenAI',
MODEL_TYPE = EMBEDDINGS,
MODEL = 'text-embedding-ada-002',
CREDENTIAL = [https://my-azure-openai-endpoint.cognitiveservices.azure.com/]
);
Untuk opsi autentikasi lainnya, termasuk kunci API, lihat MEMBUAT MODEL EKSTERNAL.
Hasilkan embedding secara inline
Gunakan AI_GENERATE_EMBEDDINGS untuk menghasilkan penyematan vektor langsung dalam kueri, penyisipan, dan pembaruan T-SQL.
-- Generate embeddings for existing rows
UPDATE t
SET t.embedding = AI_GENERATE_EMBEDDINGS(t.description USE MODEL MyEmbeddingModel)
FROM dbo.products AS t;
Memotong dan menyematkan dalam satu pernyataan
Gabungkan AI_GENERATE_CHUNKS dengan AI_GENERATE_EMBEDDINGS untuk memecah teks besar menjadi potongan dan menyematkannya dalam satu pernyataan T-SQL.
INSERT INTO dbo.document_embeddings (chunked_text, embedding)
SELECT c.chunk,
AI_GENERATE_EMBEDDINGS(c.chunk USE MODEL MyEmbeddingModel)
FROM dbo.documents AS d
CROSS APPLY AI_GENERATE_CHUNKS(
SOURCE = d.content,
CHUNK_TYPE = FIXED,
CHUNK_SIZE = 100
) AS c;
Panggilan REST langsung dengan sp_invoke_external_rest_endpoint
Untuk skenario yang tidak tercakup oleh AI_GENERATE_EMBEDDINGS, seperti penyelesaian panggilan atau titik akhir obrolan, gunakan sp_invoke_external_rest_endpoint untuk memanggil Azure OpenAI REST API langsung dari T-SQL. Untuk informasi selengkapnya, lihat integrasi Azure OpenAI.
Integrasi dengan beban kerja AI Fabric
Database SQL di Fabric terhubung ke kemampuan AI platform yang lebih luas:
| Integrasi | Gunakan |
|---|---|
| Buku Catatan Fabric | Kueri database SQL dari PySpark atau buku catatan Python untuk persiapan data, pelatihan model, dan penilaian batch. |
| Fabric Data Science | Gunakan data SQL sebagai input untuk eksperimen pembelajaran mesin, lalu tulis prediksi kembali ke database untuk konsumsi operasional. |
| Copilot dalam database SQL | Gunakan bahasa alami untuk menghasilkan, menjelaskan, dan mengoptimalkan kueri T-SQL langsung di editor kueri portal Fabric. |
| API untuk GraphQL | Sediakan data yang diperkaya AI melalui endpoint GraphQL agar dapat digunakan oleh aplikasi. |
| Alur Data dan Aliran Data Gen2 | Mengorkestrasi pembuatan embedding dan alur kerja pengayaan dalam skala besar. |
Fabric cerita kasus penggunaan database SQL
Untuk mempelajari selengkapnya tentang kasus penggunaan terbaik untuk database SQL Fabric, lihat:
- Menggunakan database SQL dalam ETL terbalik
- Menggunakan database SQL sebagai penyimpanan data operasional
- Menggunakan database SQL sebagai sumber untuk aplikasi translitikal