該項目旨在利用大型語言模型功能來支持編碼。
該系統包括客戶端和服務器。在客戶端,有各種有趣的功能,包括摘要管理,基本聊天機器人接口,選擇型號,選擇查詢或反饋模式。在服務器端,要實現查詢 /反饋的邏輯,futhermore,FastApi用於與Chatgpt API交互。

- 使用FastApi或燒瓶開髮用戶友好的Web界面,以提示用戶輸入其編碼問題的描述。
- 接口應與LLM進行交互,以根據用戶的輸入生成相應的代碼段。
前端不受Chatgpt UI的不利。它通過使用Websocket與後端進行交互。在更多詳細信息中,前端進行用戶查詢並將其通過Websocket傳輸到服務器。服務器將通過FastApi流媒體模式從Chatgpt獲得結果,然後轉發到客戶端。
- 合併一個功能,允許用戶在生成的代碼片段上提供反饋。
- 利用此反饋來完善子孫後代。
在這裡,有兩個選項查詢模式和反饋模式。在查詢模式下,編碼提示提示提示技術使用編碼提示。在反饋模式下,反饋提示可以通過幾個彈片提示技術來完善用戶的負面反饋(請參閱文件server/prompts.py )。
要在兩種模式之間切換,您可以選擇以下選項: 
- 開髮用於運行和利用本地或GPU服務器上自定義LLM的腳本。
在custom_llm文件夾中,有一個腳本可以通過vllm運行自定義LLM。您可以將URL輸入UI,然後單擊保存: 
此外,您可以從輸入文本框下方的選項中選擇所需的模型。 
- 提供一個Dockerfile以及用於構建和運行應用程序作為容器的說明
該項目支持Dockerfile的建築服務。要運行客戶端網頁Docker容器,請運行:
cd client/
sudo docker build -t code-supporter-client:latest .
sudo docker run -d -p 8000:80 code-supporter-client:latest
另一方面,運行服務器Docker容器如下:
cd server/
sudo docker build -t code-supporter-server:latest .
sudo docker run -p 7999:80 -e OPENAI_API_KEY=sk-... code-supporter-server:latest
要簡化,您只需一個命令即可運行客戶端和服務器(請更改docker-compose.yml中的OPENAI_API_KEY ):
sudo docker compose up
畢竟,請訪問url http://localhost:8000/ on Browser開始聊天!
- 在同一接口內實現功能,以顯示先前生成的代碼段的列表。
- 用戶應該能夠查看,查看和刪除這些片段
客戶端在使用客戶端的localStorage上實現了摘要管理。在更多詳細信息中, localStorage是一個詞典,其中鍵是conversation_id ,該值是多個回合的轉換。示例對話:

有兩個主要文件夾: client和server 。雖然第一個包含html/css/javaScript代碼以渲染代碼支持者網頁,但後來包含用Python編寫的服務器代碼。
在client文件夾中,最重要的代碼是js/chat.js文件,它處理server文件夾中服務器/客戶端iTeraction的邏輯,文件的使用如下:
apps.py :服務fastapirouters :處理客戶端的FastApi Websocket請求和Iteractprompts.py :聲明提示utils.py :一些支持功能