使用 IBM watsonx.ai Studio 索引程式碼庫

watsonx Code Assistant 標準計劃

您可以使用 IBM watsonx.ai Studio 來索引您的程式碼資料庫,以啟用檢索擴增生成 (RAG)。

開始之前

  • 在執行筆記型電腦之前,在 IBM Cloud 上提供 Milvus 或 Elasticsearch DB 的實例。
  • 提供 watsonx.ai Studio 的實例來執行筆記型電腦。 若要建立 watsonx.ai Studio 範例,請參閱 watsonx.ai Studio 目錄
  • 確保您有 API 金鑰,可以存取 watsonx Code Assistant,以產生程式碼中函式的說明。 這些說明與程式碼一起編入索引,以獲得更好的搜尋結果。 如需詳細資訊,請參閱 建立 IBM Cloud API 金鑰

規劃您的索引

使用 RAG 時,有效的索引對於最佳化 watsonx Code Assistant 的效能至關重要。 為儲存庫或文件編製索引時,請考慮下列因素:

  • 確保磁碟中的儲存空間是索引內容大小的兩倍。

  • 當您重複使用現有程式碼以產生新程式碼、定位特定函式的實作、回答與程式碼庫相關的操作問題時,索引程式碼庫。 您可以包含主要程式碼專案及其相依性,例如 API 實作。

  • 如果您需要 watsonx Code Assistant 來回應基於這些文件的查詢,請索引文件儲存庫,例如產品或專案文件、技術指南和設計文件。

  • 不要為很少使用的程式碼資料庫或文件建立索引,以減少儲存使用量,並將建立和維護索引所需的時間降至最低。

  • 每個儲存庫使用一個索引,尤其是針對原始碼,以便將上下文搜尋限制於特定儲存庫。

  • 如果您通常在所有文件中進行搜尋,則可將多個文件儲存庫合併到單一索引中。 如果儲存庫之間有顯著的關鍵字重疊,且不同的團隊或使用者需要在特定的文件儲存庫中搜尋上下文,您可以建立獨立的索引。

  • 請勿在同一索引中合併來自不同套件庫的程式碼。 合併代碼會降低提示回應生成的準確性,如果使用者的存取限制未適當執行,則會導致未經授權存取代碼。

  • 確保您在編制索引過程中正確管理安全性和授權。 有關不同的使用情境,請參閱 使用情境

  • 確保在索引機密或敏感內容之前,已取得所有必要的組織核准。 用於 RAG 的原始碼和文件會以純文字和向量格式儲存於您 GitHub 儲存庫之外的向量儲存庫中。

索引程式碼資料庫

  1. 登入此專案:為 watsonx Code Assistant 建立 RAG 向量儲存庫

  2. 按一下建立專案

  3. 儲存欄位中選擇 Cloud Object Storage 範例。 如果下拉清單中沒有 Cloud Object Storage 範例,請建立它。

  4. 按一下建立

  5. 前往專案中的 「資產」 選項卡,然後按一下 「填滿向量儲存筆記本」。

  6. 按照 Populate vector store 記事本中的指示,為代碼或文件編製索引。