取消
顯示的結果
而不是尋找
你的意思是:

使用私人python包磚模式

ericcbonet
新的貢獻者二世

我想舉辦一個Python MLflow模型使用磚模型服務。而服務端點函數正確沒有私人Python包,我遇到困難的時候試圖包含它們。

背景:

  • 沒有私人包:服務端點的作品好
  • 與私人包我隻能用“——指數。url設置為我的私人PyPI服務器詳細回答

我希望避免儲存私人PyPI純文本標記。自[init腳本與模型不支持服務,我不知道如何注入令牌,在構建時作為一個秘密。這是可能的嗎?

試圖解決方案:

下麵這個教程,我建立了“whl”文件,上傳他們dbfs和上市在“pip_requirements”“mlflow.pyfunc.log_model”。不幸的是,無法找到文件dbfs在構建時,防止端點創建。

代碼:

下麵是我日誌模型:

mlflow.pyfunc。log_model (“hello world”, python_model =模型,registered_model_name =“hello world”,簽名=簽名,input_example = input_example pip_requirements = [" / dbfs / FileStore /表/ private_package-0.1.10-py3-none-any。whl”),)

在pip_requirements我試過不同的路徑,文件的存在對dbfs驗證通過磚CLI。

我嚐試過“pip_requirements”:

——/ dbfs / FileStore……——dbfs / FileStore……——/ dbfs: / FileStore……- dbfs: / FileStore……

命令查看包磚筆記本:

dbutils.fs.ls (“dbfs: / FileStore /表/ private_package-0.1.10-py3-none-any.whl”)


錯誤:

構建日誌生成以下錯誤。

錯誤:無法安裝包由於OSError: [Errno 2]沒有這樣的文件或目錄:/ dbfs / FileStore /表/ private_package-0.1.10-py3-none-any。whl CondaEnvException: Pip失敗了


我的假設是,可能有一個權限錯誤,和主機可能沒有訪問dbfs磚模式。新磚,我不確定如何調試。任何指導或見解如何解決這個問題將不勝感激!

2回答2

Kaniz
社區經理
社區經理

@ericcbonet,錯誤消息表明,沒有這樣的文件或目錄位於“/ dbfs / FileStore /表/ private_package-0.1.10-py3-none-any.whl’。

這個錯誤可能發生在試圖安裝一個包,在指定的目錄中不存在。

為了解決這個問題,你可以嚐試以下步驟:

1。檢查文件是否存在於指定的目錄中運行% fs / ls / dbfs / FileStore /表如果文件不存在,您可能需要上傳到該目錄使用磚UI或CLI。

2。如果文件存在於指定的目錄,再次嚐試安裝使用% pip安裝/ dbfs / FileStore /表/ private_package-0.1.10-py3-none-any.whl

來源:
- - - - - -https://docs.m.eheci.com/libraries/notebooks-python-libraries.html install-a-private-package

ericcbonet
新的貢獻者二世

@Kaniz謝謝你回到我。

你附加的鏈接是為私人pip安裝包在一個筆記本上。如前所述在我的問題我可以安裝我的私人包(我上傳到dbfs)筆記本沒有問題。我的問題是安裝這個包模型服務

運行命令你給我一個筆記本FileNotFoundException結果,而目錄與dbutils發現,看到下麵的截圖。

ericcbonet_0 - 1691310536630. - png

我充滿文件路徑從磚的筆記本我的python代碼,這一次有許多不同的路徑組合。我總是得到同樣的錯誤

錯誤:無法安裝包由於OSError: [Errno 2]沒有這樣的文件或目錄

此外,即使我可以調試問題即為什麼模型為碼頭工人構建環境沒有找到文件dbfs(我懷疑是權限相關的),我不是超級滿意這個工作流,必須更新dbfs和私人python包更新鏈接mlflow.pyfunc.log_model pip_requirements論點的。

會使這個過程更容易,如果一個秘密可以被構建環境,然後可以注入“conda。yaml文件通過一個init腳本。例如

# conda。yaml渠道:違約依賴性:python = 3.10 - pip皮普:- mlflow > = 2.5.0 boto3 > = 1.28.18 -公司私有化> = 0.1.10——index-url”https://aws: % % CODE_ARTIFACT_TOKEN % % @company中央- 1. - 0123456789. - d.codeartifact.eu - - amazonaws.com/pypi/company python - packages/simple/”名稱:mlflow-serving

. sh init腳本能做以下

sed - s / % % CODE_ARTIFACT_TOKEN % % / ${{秘密。conda.yaml code-artifact-token}} / g”

我意識到模型服務目前不支持init腳本,這是路線圖?或者你可以建議另一個工作流,所以我可以使用私人python包嗎?

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map