這是Packt發行的Langchain的生成AI的代碼存儲庫。
本·奧法斯(Ben Auffarth)
Openai的Chatgpt和GPT模型不僅在我們的撰寫和研究中都帶來了一場革命,而且在如何處理信息方面也帶來了革命。本書討論了LLM的功能,功能和局限性,包括Chatgpt和Bard。它還在一系列實踐示例中證明瞭如何使用Langchain框架來構建可準備生產和響應式LLM應用程序的應用程序,用於從客戶支持到軟件開發幫助和數據分析的任務 - 說明了LLM在現實世界中的廣泛實用性。
當您通過微調,及時的工程以及用於生產環境中的部署和監視的最佳實踐時,在項目中解鎖了LLM的全部潛力。無論您是構建創意寫作工具,開發複雜的聊天機器人還是製作尖端軟件開發輔助工具,這本書都是您以自信和創造力來掌握生成AI的變革力量的路線圖。
感謝您選擇“與Langchain的生成AI”!感謝您的熱情和反饋。
請注意,我們已發布了該書的更新版本。因此,此存儲庫有兩個不同的分支:
請參考您感興趣的版本或與您的書的版本相對應。
如果您已經購買了本書的最新印刷版或Kindle版本,則可以免費獲得無DRM的PDF版本。只需單擊鏈接即可索取您的免費PDF。免費書籍
我們還提供了一個PDF文件,該文件具有本書中使用的屏幕截圖/圖表的顏色圖像
代碼更新:我們的承諾是為您提供穩定且有價值的代碼示例。儘管Langchain以頻繁的更新而聞名,但我們了解將代碼與最新更改保持一致的重要性。伴侶存儲庫會定期更新以與蘭班的開發協調。
預期穩定性:為了穩定性和可用性,存儲庫可能不符合每個較小的蘭鏈更新。我們的目標是一致性和可靠性,以確保讀者獲得無縫的體驗。
如何联系我們:遇到問題或有建議?請不要猶豫,打開一個問題,我們會及時解決。您的反饋是無價的,我們在這里為您提供Langchain的旅程。感謝您的理解和愉快的編碼!
您可以在Discord服務器上與作者和其他讀者互動,並在不和諧的社區中找到最新的更新和討論
在下表中,您可以在此存儲庫中找到指向目錄的鏈接。每個目錄都包含指向Python腳本和筆記本的更多鏈接。您還可以看到指向計算平台的鏈接,您可以在其中執行存儲庫中的筆記本。請注意,還有其他不是筆記本的Python腳本和項目,您將在本章目錄中找到。
| 章節 | COLAB | Kaggle | 坡度 | Studio Lab |
|---|---|---|---|---|
| 第1章:什麼是生成AI? | 沒有代碼示例 | |||
| 第2章:llmchain for LLM應用程序 | 沒有代碼示例 | |||
| 第三章:蘭班 | 目錄 | |||
| ||||
| ||||
| ||||
| ||||
| ||||
| ||||
| ||||
| ||||
| 第4章:建築有能力的助手 | 目錄 | |||
| ||||
| ||||
| ||||
| 第5章:建立聊天機器人 | 目錄 | |||
| ||||
| ||||
| ||||
| ||||
| ||||
| 第6章:開發具有生成AI的軟件 | 目錄 | |||
| ||||
| ||||
| ||||
| ||||
| 第7章:數據科學的LLM | 目錄 | |||
| ||||
| 第8章:自定義LLM及其輸出 | 目錄 | |||
| ||||
| 第9章:生產中的生成AI | 目錄 | |||
| 第10章:生成模型的未來 | 沒有代碼示例 |
這是本書的伴侶存儲庫。這是一些有助於設置的說明。請參閱第3章。
所有章節都依靠Python。
| 章 | 需要軟件 | 鏈接到軟件 | 硬件規格 | 需要操作系統 |
|---|---|---|---|---|
| 所有章節 | Python 3.11 | https://www.python.org/downloads/ | 應該在任何最近的計算機上工作 | Windows,MacOS,Linux(Any),MacOS,Windows |
請注意,Python 3.12可能行不通(請參閱#11)。
您可以使用Conda(推薦)或PIP安裝本地環境。提供了Conda,Pip和詩歌的環境配置。它們都已在MacOS上進行了測試。請注意,如果您選擇PIP作為安裝工具,則可能需要其他系統依賴性安裝。
如果您在環境方面有任何問題,請提出一個問題,顯示出您遇到的錯誤。如果您有信心,請繼續創建拉動請求。
在Windows上,有些人在Conda和pip(由於閱讀線和ncurses)方面遇到困難。如果是您的情況,請查看WSL或使用Docker安裝。 WinoDW上的一些人報告說,他們需要安裝Visual CPP構建工具。無論如何,如果您在環境方面有任何問題,請提出一個問題,顯示出您遇到的錯誤。如果您有信心找到改進,請繼續創建拉動請求。
對於PIP和詩歌,請確保您在系統中安裝Pandoc。在MacOS上使用啤酒:
brew install pandoc在Ubuntu或Debian Linux上,使用APT:
sudo apt-get install pandoc在Windows上,您可以使用安裝程序。
這是安裝依賴項的推薦方法。請確保安裝了Anaconda。
首先為包含所有依賴項的書創建環境:
conda env create --file langchain_ai.yaml --force康達環境稱為langchain_ai 。您可以將其激活如下:
conda activate langchain_ai PIP是Python中的默認依賴關係管理工具。使用PIP,您應該能夠從需求文件中安裝所有庫:
pip install -r requirements.txt如果您正在使用緩慢的Internet連接,則可能會看到PIP的超時(Conda和Pip也可能發生)。作為解決方法,您可以增加這樣的超時設置:
export PIP_DEFAULT_TIMEOUT=100環境也有一個Docker文件。它使用Docker環境並啟動IPYTHON筆記本。要使用它,首先構建它,然後運行它:
docker build -t langchain_ai .
docker run -it -p 8888:8888 langchain_ai您應該能夠在http:// localhost:8888的瀏覽器中找到筆記本。
確保安裝了詩歌。在Linux和MacOS上,您應該能夠使用要求文件:
poetry install --no-root這應該取pyproject.toml文件並安裝所有依賴項。
遵循有關安全性的最佳實踐,我沒有向Github承諾證書。您可能會看到提及config.py文件的import語句,該文件未包含在存儲庫中。該模塊具有一個方法set_environment() ,該模塊將所有鍵設置為像這樣的環境變量:
示例config.py:
import os
def set_environment ():
os . environ [ 'OPENAI_API_KEY' ] = 'your-api-key-here'顯然,您將API憑據放在這裡。根據集成(OpenAI,Azure等),您需要添加相應的API鍵。 OpenAI API鍵是所有代碼中最常使用的。
您可以在與Langchain的《生成AI》的第3章中找到有關API憑據和設置的更多詳細信息。
如果您發現筆記本或依賴項有任何不對勁,請隨時創建拉動請求。
如果要更改Conda依賴項規範(YAML文件),則可以這樣測試:
conda env create --file langchain_ai.yaml --force您可以這樣更新PIP要求:
pip freeze > requirements.txt請確保您將這兩種維護依賴關係保持同步。
然後確保您在新環境中測試筆記本,以查看它們運行。
我提供了一個Makefile ,其中包括使用Flake8,MyPy和其他工具驗證的說明。我像這樣運行了巨魔:
make typecheck要在ruff中運行代碼驗證,請運行
ruff check . Ben Auffarth Ben Auffarth是一位擁有超過15年工作經驗的全棧數據科學家。具有背景和博士學位在計算和認知神經科學中,他已經設計和進行了有關細胞培養的濕實驗實驗,分析了數據的實驗,在IBM超級計算機上進行了大腦模型,具有多達64K核心的IBM超級計算機,建立了生產系統,每天處理成千上萬的交易,並在文本文檔的大型語料庫上進行訓練有素的語言模型。他共同創立了倫敦數據科學發言人的前總裁。