Code LLM(Code Large Language Model)是一類專門針對程式碼相關任務優化的大型語言模型,它們比一般 LLM(如 ChatGPT)更擅長:
模型名稱 | 開發公司/組織 | 特點 |
---|---|---|
GitHub Copilot (Codex) |
OpenAI + GitHub | 針對程式碼補全優化 |
Code Llama |
Meta | 支援多種語言,開源 |
StarCoder / StarCoder2 |
Hugging Face + BigCode | 開源,支援多語言與自然語言 |
DeepSeek-Coder |
DeepSeek | 中文表現佳,支援多語言 |
Mistral-Codestral |
Mistral AI | 小模型高效能 |
Gemini Code Assist |
Google DeepMind | 與 Google Cloud 整合 |
Phi-3-mini-128k-instruct |
Microsoft | 輕量級高上下文長度 |
[ 使用者需求 ]
↓
[ Prompt + 程式碼上下文 ]
↓
[ Code LLM 模型 (e.g., Code Llama, StarCoder) ]
↓
[ 程式碼生成 / 補全 / 修正 ]
↓
[ 執行 / 測試 / 部署 ]
import requests
# 發送 Prompt 到本地 Ollama API
response = requests.post(
"http://localhost:11434/api/generate",
json={
"model": "codellama",
"prompt": "用 Python 寫一個計算質數的函數"
}
)
for line in response.iter_lines():
if line:
print(line.decode('utf-8'))
from langchain_openai import ChatOpenAI
from langchain.prompts import ChatPromptTemplate
from langchain.chains import LLMChain
# 初始化模型(可換成 Code Llama API)
llm = ChatOpenAI(model="gpt-4o-mini", temperature=0)
prompt = ChatPromptTemplate.from_template(
"請用 Python 寫一個可以檢查字串是否為回文的函數"
)
chain = LLMChain(llm=llm, prompt=prompt)
print(chain.run({}))