首頁 >後端開發 >Python教學 >快轉和三向合併

快轉和三向合併

Barbara Streisand
Barbara Streisand原創
2024-09-28 12:16:02975瀏覽

Fast-forward and three-way merges

從事我的專案輸液時:
https://github.com/SychAndrii/infusion

我決定實現 2 個新功能 - 來自 LLM 的即時串流回應以及在程式完成時使用適當的退出程式碼。然而,我的任務不是建立傳統的拉取請求以將變更整合到主分支中,而是在我的儲存庫中本地進行合併,然後將合併結果推送到遠端儲存庫。

第一個問題是實作退出碼:
https://github.com/SychAndrii/infusion/issues/34

透過合併提交關閉:
https://github.com/SychAndrii/infusion/commit/b01f493a8eb3c86aad00760f41f8adf0b93b231e

這個任務非常容易實現,因為 python 為您提供了一個 sys 套件來傳回狀態碼。我決定為我的程式設定 4 個錯誤狀態代碼:

0 - 計畫成功結束。
1 - 提供的選項無效。
2 - 提供的文件無效。
3 - 未知錯誤。

除了添加狀態碼之外,我還重構了程式碼,使其更加直觀,使用了更多功能。

我的第二個問題是實現串流:
https://github.com/SychAndrii/infusion/issues/33

透過合併提交關閉:
https://github.com/SychAndrii/infusion/commit/b01f493a8eb3c86aad00760f41f8adf0b93b231e

由於我在專案中使用了 LangChain 庫,因此這項任務更難完成。這個函式庫相對較新,因此使用 astream 函數進行串流的文件非常不直觀且難以理解。

我一直討厭Python,並且會在我的餘生中繼續這樣做。我試圖在這個專案中更輕鬆地使用它,但在使用 C#、TypeScript 或 Kotlin 等語言之後,我無法認真對待 Python。

以上是快轉和三向合併的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn