Topik ini menjelaskan cara mentransfer data dari Lark ke Basis Pengetahuan RAGFlow Data Transmission Service (DTS).
Prasyarat
Anda telah membuat Basis Pengetahuan RAGFlow di DTS dan mengonfigurasi daftar putih IP.
Informasi latar belakang
Tipe data yang didukung
DTS RAGFlow mendukung koneksi ke Lark Docs, buku kerja, Bitable, dan basis pengetahuan di Lark.
Metode untuk mengakses Lark
Anda dapat mengakses data Lark menggunakan kredensial akses aplikasi (tenant_access_token) atau kredensial akses pengguna (user_access_token).
Metode | Tipe izin | Kelebihan | Kekurangan |
tenant_access_token (Direkomendasikan) | Identitas aplikasi |
| Membutuhkan lebih banyak langkah untuk otorisasi. Anda perlu mengonfigurasi izin akses tambahan untuk Cloud Drive dan basis pengetahuan. |
user_access_token | Identitas pengguna | Membutuhkan lebih sedikit langkah untuk otorisasi. Ini memiliki izin akses ke semua folder, sehingga Anda tidak perlu mengonfigurasi izin akses tambahan untuk Cloud Drive dan basis pengetahuan. |
|
Persiapan
Masuk ke Platform Terbuka Lark dan buka Developer Console.
Klik Create Custom App, konfigurasikan informasi seperti Name dan App Description, lalu klik Create.
Klik kartu aplikasi untuk masuk ke halaman pengeditan aplikasi.
Secara default, halaman muncul.
Di halaman Credentials & Basic Info, di bagian App Credentials, catat App ID dan App Secret.
Prosedur
Untuk informasi lebih lanjut tentang operasi Lark, lihat dokumentasi resmi Lark (Pusat Bantuan dan Dokumentasi Pengembang).
Langkah 1: Konfigurasikan izin akses
Gunakan tenant_access_token
Masuk ke Platform Terbuka Lark dan buka Developer Console.
Klik aplikasi yang Anda buat di bagian Persiapan.
Tambahkan bot dan publikasikan aplikasi.
Di panel navigasi di sebelah kiri, pilih .
Di tab Add By Feature, temukan kartu Bot dan klik Add.
Di bagian atas halaman, klik Create Version.
CatatanSebagai alternatif, di panel navigasi di sebelah kiri, pilih , lalu klik Create Version.
Di halaman Version Details, masukkan App Version dan Update Notes.
CatatanBiarkan nilai default Bot untuk Default Feature On Mobile dan Default Feature On Desktop.
Klik Save.
Di kotak dialog yang muncul, klik Confirm Release.
Konfigurasikan izin API.
Di panel navigasi di sebelah kiri, pilih .
Klik Bulk Import/Export Scopes.
Di tab Import, di kotak teks JSON, masukkan izin berikut untuk aplikasi.
{ "scopes": { "tenant": [ "docs:document:export", "drive:drive", "wiki:wiki" ], "user": [] } }Klik Next, Confirm New Scopes.
Klik Request To Activate.
Masuk ke klien Lark, buat grup baru, dan tambahkan aplikasi yang Anda buat di bagian Persiapan sebagai Group Bot.
Konfigurasikan izin akses untuk Cloud Drive dan basis pengetahuan.
Konfigurasikan izin akses Cloud Drive
Buka folder target Cloud Drive.
Di sisi kanan halaman, klik Share.
Untuk Invite Collaborators, masukkan grup audiens yang Anda buat di Langkah 5.
Izin default Can View sudah cukup.
Klik Send.
Konfigurasikan izin akses basis pengetahuan
Buka halaman Semua Basis Pengetahuan.
Arahkan mouse ke basis pengetahuan target, lalu klik ikon Knowledge Base Settings yang muncul.
Klik tab Member Settings. Di bagian Roles & Permissions, pada tab Administrator, klik Add Administrator.
Di kotak dialog yang muncul, tambahkan grup audiens yang Anda buat di Langkah 5, lalu klik Next.
Klik Send.
Gunakan user_access_token
Masuk ke Platform Terbuka Lark dan buka Developer Console.
Klik aplikasi yang Anda buat di bagian Persiapan.
Konfigurasikan izin API.
Di panel navigasi di sebelah kiri, pilih .
Klik Bulk Import/Export Scopes.
Konfigurasikan izin identitas pengguna untuk aplikasi yang dibuat di bagian Persiapan.
{ "scopes": { "tenant": [], "user": [ "offline_access", "docs:document:export", "drive:drive", "wiki:wiki" ] } }Klik Next, Confirm New Scopes.
Klik Request To Activate.
Anda dapat mengonfigurasi daftar putih IP pengalihan.
Di panel navigasi di sebelah kiri, pilih .
Di kotak teks Redirect URLs, masukkan
https://www.aliyun.com.Klik Add di sebelah kanan kotak teks.
Nyalakan sakelar Refresh User_access_token.
CatatanJika sakelar ini tidak tersedia, fitur tersebut diaktifkan secara default.
Dapatkan kode otorisasi.
Buat URL untuk halaman otorisasi Lark.
CatatanGanti
YOUR_FEISHU_CLIENT_IDdi URL berikut dengan App ID yang Anda catat di bagian Persiapan.https://accounts.feishu.cn/open-apis/authen/v1/authorize?client_id=YOUR_FEISHU_CLIENT_ID&redirect_uri=https://www.aliyun.com&scope=drive:drive offline_access docs:document:export wiki:wikiBuka halaman otorisasi di browser.
Klik Authorize.
Ambil kode otorisasi (
code) dari URL pengalihan.CatatanKode otorisasi tidak termasuk simbol code=, &, atau informasi apa pun yang mengikuti simbol &.
Langkah 2: Dapatkan token folder Lark Doc dan ID basis pengetahuan
Masuk ke klien Lark.
Dapatkan token folder Lark Doc.
Buka folder target.
Salin URL folder dari bilah alamat.
Ekstrak token dari URL. Token adalah string karakter setelah
folder/.CatatanToken tidak mencakup simbol ? atau informasi yang mengikutinya.
Dapatkan ID basis pengetahuan.
Buka halaman Semua Basis Pengetahuan.
Arahkan mouse ke basis pengetahuan target, lalu klik ikon Knowledge Base Settings yang muncul.
Salin URL basis pengetahuan target dari bilah alamat.
Ekstrak ID basis pengetahuan dari URL. ID adalah string karakter setelah
settings/.CatatanID basis pengetahuan hanya berisi angka dan tidak termasuk simbol # atau informasi yang mengikuti.
Langkah 3: Jalankan program KBSync
Dapatkan file KBSync.
CatatanAnda dapat bergabung dengan grup DingTalk (ID: 79690034672) dan hubungi helpdesk untuk mendapatkan file KBSync.
Siapkan lingkungan runtime untuk program KBSync.
CatatanProgram KBSync harus berjalan di lingkungan Linux yang dapat mengakses Platform Terbuka Lark dan RAGFlow.
Siapkan file konfigurasi config.
Buat file Linux bernama config.
Salin kode berikut ke file config.
whiteList= blackList= sinkType=RagFlow sourceType=FeiShu ragflowUrl=http://XX.XX.XX.XX ragflowApiKey=Bearer RAGFlow-BmND******MDI0Mm ragflowDatasetId=928d061******2ac120006 feishuAppId=cli_a8a******d00d feishuAppSecret=pMp73Si******UDrWXBSOa feishuUserAccessCode=bGzpx6******B9KFCdzdCDHG feishuCloudSpaceDirToken=ESJm*******CRdn002cii3bnAc feishuWikiSpaceId=7504968******8674Ganti parameter di file config.
PentingUntuk parameter yang tidak perlu dikonfigurasi, biarkan nilainya kosong.
Jika Anda melewati parameter untuk
feishuCloudSpaceDirTokendanfeishuWikiSpaceId, hanya Lark Docs dan folder induknya yang ditransfer (hanya parameterfeishuCloudSpaceDirTokenyang berlaku).Parameter
blackListmemiliki prioritas lebih tinggi daripada parameterwhiteList.
Parameter
Wajib
Deskripsi
Cara mendapatkan
whiteListTidak
Path untuk ditransfer (whitelist) dan tidak ditransfer (blacklist). Ini mencakup path folder di Lark Docs dan path dokumen di basis pengetahuan.
CatatanEkspresi reguler didukung. Pisahkan beberapa path dengan spasi.
Dapatkan ini dari klien Lark.
blackListTidak
sinkTypeYa
Tipe sink.
Biarkan nilainya sebagai
RagFlow.sourceTypeYa
Tipe sumber.
Biarkannilainya sebagai
Feishu.ragflowUrlYa
Alamat RAGFlow (API Server).
ragflowApiKeyYa
Kunci API Basis Pengetahuan RAGFlow.
ragflowDatasetIdYa
ID Basis Pengetahuan RAGFlow.
feishuAppIdYa
ID aplikasi di Lark (App ID).
feishuAppSecretYa
Rahasia aplikasi di Lark (App Secret).
feishuUserAccessCodeTidak
CatatanParameter ini hanya diperlukan jika Anda menggunakan metode user_access_token untuk mengakses data Lark.
Kode otorisasi Lark.
feishuCloudSpaceDirTokenTidak
CatatanAnda hanya perlu melewati parameter untuk salah satu dari ini.
Token folder yang berisi Lark Docs.
feishuWikiSpaceIdID basis pengetahuan Lark.
Letakkan file KBSync dan file konfigurasi config di folder yang sama di lingkungan Linux.
Di lingkungan Linux, jalankan perintah
./KBSync --config configuntuk memulai program KBSync.Jika outputnya mirip dengan berikut, program KBSync sedang berjalan dengan benar.
./KBSync --config config INFO config whiteList=, blackList= INFO config ragflowUrl=http://XX.XX.XX.XX/, ragflowApiKey=Bearer RAGFlow-BmND******MDI0Mm INFO config ragflowDatasetId=928d061******2ac120006 INFO config feishuAppId=cli_a8a******d00d, feishuAppSecret=pMp73Si******UDrWXBSOa INFO Response from https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal: 200, headers: {'Server': 'Tengine', 'Content-Type': 'application/json', 'Content-Length': '102', 'Connection': 'keep-alive', 'Date': 'Tue, 08 Jul 2025 02:49:01 GMT', 'Request-Id': '25bf****-d386-4a86-****-f440f070****', 'Tt_st****': '1', 'X-Lgw-Dst-Svc': 'jbpiSR****OiA0J3d****-Oz0xugYAH9otZIFg4x****', 'X-Request-Id': '25bf****-d386-4a86-b9f4-f440f070****', 'X-Tt-Logid': '202507081049012933B870245850D****', 'server-timing': 'inner; dur=73, cdn-cache;desc=MISS,edge;dur=0,origin;dur=129', 'x-tt-trace-host': '****', 'x-tt-trace-tag': '****', 'x-tt-trace-id': '00-****', 'X-Timestamp': '175194****.952', 'Via': 'cache8.cn6540[129,0]', 'Timing-Allow-Origin': '*', 'EagleId': '6ae3651c1751942941849****'}, body: b'{"code":0,"expire":4340,"msg":"ok","tenant_access_token":"t-g10478a*******CSC3YVY"}' INFO set feishu tenant access token expires in: 4340
Lampiran
Dapatkan endpoint API Basis Pengetahuan RAGFlow
Di panel navigasi di sebelah kiri, klik API.
Salin nilai API Server.
Dapatkan kunci API Basis Pengetahuan RAGFlow
Di panel navigasi di sebelah kiri, klik API.
Di sebelah kanan RAGFlow API, klik API KEY.
Di kotak dialog API KEY, klik Create New Key.
Klik
untuk mencatat token.
Dapatkan ID Basis Pengetahuan RAGFlow
Di halaman Knowledge Base, klik basis pengetahuan target.
Di URL halaman saat ini, catat ID basis pengetahuan.
CatatanInformasi setelah
id=adalah ID basis pengetahuan.