LangChain磚上
重要的
這些實驗特性和API定義可能會改變。
本文描述了LangChain與磚的集成,包括筆記本電腦的例子。
LangChain可用作為實驗MLflow味道LangChain客戶可以利用強大的工具和實驗直接從磚MLflow環境的跟蹤能力。beplay体育app下载地址看到LangChain味道MLflow文檔。
LangChain是什麼?
LangChain是一個軟件框架,旨在幫助創建應用程序利用大型語言模型(llm)。LangChain的力量在於其廣泛的集成和功能。它包括API包裝器、web抓取子係統、代碼分析工具,文檔摘要工具等等。它還支持從OpenAI大型語言模型,人為,HuggingFace等的各種數據源和類型。
PySpark DataFrame裝載機
的PySpark DataFrame裝載機在LangChain促進加載數據從一個PySpark DataFrame用單一的方法。
從langchain.document_loaders進口PySparkDataFrameLoader加載程序=PySparkDataFrameLoader(火花,wikipedia_dataframe,page_content_column=“文本”)文檔=加載程序。負載()
以下筆記本展示了一個例子,PySpark DataFrame加載器是用於創建一個基於檢索的chatbot MLflow記錄,從而可以解釋為一個通用的模型推理的Python函數mlflow.pyfunc.load_model ()
。
火花DataFrame代理
火花DataFrame代理與火花DataFrame LangChain允許互動,優化問題回答。LangChain的火花Dataframe代理文件提供了一個詳細的例子如何創建和使用DataFrame火花DataFrame代理。
從langchain.agents進口create_spark_dataframe_agentdf=火花。讀。csv(“/ databricks-datasets / COVID / coronavirusdataset / Region.csv”,頭=真正的,inferSchema=真正的)顯示(df)代理=create_spark_dataframe_agent(llm=OpenAI(溫度=0),df=df,詳細的=真正的)…
磚SQL代理
的磚SQL代理是一個變體LangChain提供的標準SQL數據庫代理和被認為是一個更強大的變異的火花DataFrame代理。
任何磚與磚的SQL代理用戶可以與指定的模式在他們的數據統一目錄和生成的見解。
重要的
磚SQL代理隻能查詢的表,不創建表。
在下麵的示例中創建數據庫實例SQLDatabase.from_databricks(目錄=“……”模式= "…")
命令和所需的代理和工具創建的SQLDatabaseToolkit (db = db,llm = llm)
和create_sql_agent (llm = llm,工具箱=工具包,* * kwargs)
,分別。
從langchain.agents進口create_sql_agent從langchain.agents.agent_toolkits進口SQLDatabaseToolkit從langchain.sql_database進口SQLDatabase從langchain進口OpenAIdb=SQLDatabase。from_databricks(目錄=“樣本”,模式=“nyctaxi”)llm=OpenAI(溫度=。7)工具包=SQLDatabaseToolkit(db=db,llm=llm)代理=create_sql_agent(llm=llm,工具包=工具包,詳細的=真正的)代理。運行(“什麼是最長的旅行距離和花了多長時間?”)
包磚llm服務端點
現在您可以輕鬆將磚端點LangChain llm。因此,如果你有一個創建LLM磚,你可以使用它直接在LangChain OpenAI的地方,HuggingFace或任何其他LLM提供者。它支持兩種端點類型:
模型服務端點推薦的生產和發展。
代理應用程序集群司機,為互動發展建議。
看到LangChain文檔對於語法和設計模式。
用一個模型服務端點
包裝服務端點作為LangChain LLM模型你需要:
注冊LLM磚模型部署到服務端點。
可以查詢
端點的許可。
通常,模型要求/建議重要參數,溫度
或max_tokens
下麵的例子顯示了如何輸入這些參數與命名的部署模型falcon-7b-instruct
。更多細節可以在找到包裝服務端點LangChain文檔。
從langchain.llms進口磚llm=磚(endpoint_name=“falcon-7b-instruct”,model_kwargs={“溫度”:0.1,“max_tokens”:One hundred.})llm(“你好嗎?”)
包裝一個集群司機代理應用程序
包裝一個集群司機代理應用程序作為LangChain LLM你需要:
LLM加載到一個磚互動集群的“單用戶”或“沒有隔離共享”模式。
本地HTTP服務器上運行驅動節點服務模型在使用HTTP POST " JSON輸入/輸出。
應用程序使用的端口號(3000、8000)之間,聽司機的IP地址或隻是0.0.0.0代替
本地主機
隻有。可以附加來
集群的許可。
看到LangChain文檔包裝一個集群司機代理程序了一個例子。