16 篇文章带有标签 “CodeLLM”

Qwen2.5-Coder Technical Report

In this report, we introduce the Qwen2.5-Coder series, a significant upgrade from its predecessor, CodeQwen1.5. This series includes two models: Qwen2.5-Coder-1.5B and Qwen2.5-Coder-7B. As a code-specific model, Qwen2.5-Coder is built upon the Qwen2.5 architecture and continues pretrained on a vast corpus of over 5.5 trillion tokens. Through meticulous data cleaning, scalable synthetic data generation, and balanced data mixing, Qwen2.

Continue - It’s time to collect data on how you build software

是时候收集关于你们如何构建软件的数据了。

  • LLM more helpful with coding (LLM在编码方面更有帮助)
  • Developers use LLM while coding more (开发者在编码时更多地使用LLM)
  • Better data collected on how software is built (收集到更好的关于软件构建方式的数据)
  • Better LLM is trained or fine-tuned (训练或微调更好的LLM)

随着时间的推移,开发者的偏好和使用的工具也在不断演进。当前一代的开发者正在用大型语言模型(LLMs)取代之前的Google和Stack Overflow,就像之前的一代人用Google和Stack Overflow取代了传统的参考手册一样。 在这个过渡期中,能够保留和吸引开发者的组织将会:

首先,理解他们的开发者如何使用LLMs,并通过收集开发数据——即他们组织构建软件的方式——来展示使用LLMs的投资回报率(ROI)。 然后,利用这个基础建立一个开发数据引擎——一个确保LLMs始终拥有最新信息和代码的持续反馈循环,以他们偏好的风格呈现。 通过展示ROI来增加LLMs预算的工程组织将能够保留他们的顶尖开发者。

Continue Code LLM Autopilot

DeepSeek API 使用与 OpenAI 兼容的 API 格式,通过修改配置,您可以使用 OpenAI SDK 来访问 DeepSeek API,或使用与 OpenAI API 兼容的软件。

参数 值 base_url    https://api.deepseek.com/v1 api_key 申请 api_key

参数
base_url https://api.deepseek.com/v1
api_key YOUR_API_KEY
模型 描述 上下文长度
deepseek-coder 擅长处理编程任务 16K
deepseek-chat 擅长通用对话任务 16K

DeepSeek-Coder 论文解读

  1. GitHub数据抓取
  2. 规则过滤
  3. 依存分析
  4. 仓库级重复数据删除
  5. 质量筛选

下表中列出保留的87种编程语言统计摘要(磁盘大小、文件数量和百分比),总数据量为798 GB,包含603百万个文件。

Tabby 的基准测试

  • 模型:TabbyML/DeepseekCoder-1.3B
docker run -d --gpus all -p 8080:8080 \
  -v /data/zhw/tabby/data:/data \
  tabbyml/tabby:latest \
  serve --model TabbyML/DeepseekCoder-1.3B \
  --device cuda --parallelism 12

\\n 不能写为 \n,否则会报错:Failed to parse the request body as JSON: segments.prefix: control character (\u0000-\u001F) found while parsing a string at line 2 column 0

  • 基准测试工具:wrk
  • 持续时间:1 分钟
  • 超时时间:10 秒

人工智能编码助手(AI Coding Assistant)功能

功能 说明
代码补全 基于海量数据提供实时地代码补全服务,包括行内补全(单行补全)和片段补全(多行补全)。
添加注释 智能为选定的代码生成注释,目前在整个函数级别的生成注释效果较好。
解释代码 智能解析代码意图,为选定的代码生成解释,辅助阅读并理解代码。
生成单测 在写完业务逻辑后,为选定的代码生成单测,即可智能生成具备业务语义的测试用例,从而提升问题发现的效率。
代码优化 基于大模型的代码理解能力和静态源码分析能力,支持对选定的代码片段进行分析理解并提出优化、改进建议,还能直接基于改进建议生成代码补丁。
  • 模型的评估
  • 模型的参数
  • 模型的训练
  • 模型的推理
  • 最大 Token (CodeFuse)
    • 输入:1280 Tokens
    • 输出:1024 Tokens

在 GeForce GTX 1060 上部署 Tabby - AI编码助手

lsof 是一个在 Unix 和类 Unix 系统(如 Linux)上的命令行工具,用于列出当前系统打开的文件。在这里,"文件" 的概念很广泛,除了常见的文件和目录,还包括网络套接字、设备、管道等。

  • -n 参数告诉 lsof 不要将网络号转换为主机名,这可以加快 lsof 的运行速度。
  • -w 参数告诉 lsof 不要抑制警告信息。
  • /dev/nvidia* 是要查看的文件的路径,* 是通配符,表示所有以 /dev/nvidia 开头的文件。在这里,这些文件通常代表 NVIDIA 的设备。

所以,sudo lsof -n -w /dev/nvidia* 命令的作用是查看哪些进程正在使用 NVIDIA 设备。

基于 PyCharm 使用 Tabby 和 CodeGPT 插件搭建免费的 GitHub Copilot

  • 启动服务 Controller
python -m fastchat.serve.controller
  • 启动服务 Model Worker
python -m fastchat.serve.model_worker \
  --model-path THUDM/chatglm3-6b --port 21002 \
  --worker-address http://localhost:21002 \
  --model-names chatglm3-6b,gpt-3.5-turbo
  • 启动服务 OpenAI API Server
python -m fastchat.serve.openai_api_server --port 8000

Tabby - GitHub Copilot 的开源替代解决方案

Introducing the Coding LLM Leaderboard

更新日期:2023-11-13

在代码补全中,模型预测的是跨越多行的代码块。一种朴素的方法是直接将预测的代码块与实际提交的代码进行比较。虽然这种方法看起来理想,但它通常被认为是一个“过于稀疏”的度量标准。另一方面,下一行准确度可以作为整体代码块匹配准确度的可靠代理。

只有红色框内的内容被用于与真实值进行比较,以计算准确度指标。

  • brew cleanup tabby 命令的意思是清理所有旧版本的 tabby 包和缓存的 tabby 下载。

DeepSeek Coder: Let the Code Write Itself

选择了两个通用基准来评估:

  • HumanEval: 用于测量从文档字符串合成程序的功能正确性的基准。它由 164 个 Python 编程问题组成。
  • MultiPL-E: 将 HumanEval 翻译为 18 种编程语言。

下面显示了 OctoCoder vs Base HumanEval prompt 的示例,在这里可以找到它。

如果您不想使用提供的 API apply_chat_template 加载模板 tokenizer_config.json,您可以使用以下模板与我们的模型聊天。将替换 ['content'] 为您的指令和模型之前(如果有)的响应,然后模型将生成对当前给定指令的响应。 You are an AI programming assistant, utilizing the DeepSeek Coder model, developed by DeepSeek Company, and you only answer questions related to computer science.

CodeFuse

功能 说明
代码补全 基于海量数据提供实时地代码补全服务,包括行内补全(单行补全)和片段补全(多行补全)。
添加注释 智能为选定的代码生成注释,目前在整个函数级别的生成注释效果较好。
解释代码 智能解析代码意图,为选定的代码生成解释,辅助阅读并理解代码。
生成单测 在写完业务逻辑后,为选定的代码生成单测,即可智能生成具备业务语义的测试用例,从而提升问题发现的效率。
代码优化 基于大模型的代码理解能力和静态源码分析能力,CodeFuse 支持对选定的代码片段进行分析理解并提出优化、改进建议,还能直接基于改进建议生成代码补丁。

通过检索增强生成(Retrieval Augmented Generation,RAG)、工具学习(Tool Learning)和沙盒

CodeFuse

功能 说明
代码补全 基于海量数据提供实时地代码补全服务,包括行内补全(单行补全)和片段补全(多行补全)。
添加注释 智能为选定的代码生成注释,目前在整个函数级别的生成注释效果较好。
解释代码 智能解析代码意图,为选定的代码生成解释,辅助阅读并理解代码。
生成单测 在写完业务逻辑后,为选定的代码生成单测,即可智能生成具备业务语义的测试用例,从而提升问题发现的效率。
代码优化 基于大模型的代码理解能力和静态源码分析能力,CodeFuse 支持对选定的代码片段进行分析理解并提出优化、改进建议,还能直接基于改进建议生成代码补丁。

通过检索增强生成(Retrieval Augmented Generation,RAG)、工具学习(Tool Learning)和沙盒

AI 大模型基础服务架构图

<center>
<div class="mermaid">
%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart TB
  subgraph tool[聊天工具]
    direction TB
    chatgpt-next(ChatGPT Next Web)
    langchain-chatchat(Langchain-Chatchat)
    wechat(chatgpt-on-wechat)
  end
  subgraph business-application[业务应用层]
    direction TB
    app1(发电)
    app2(调度)
    app3(输变电)
// ...

AI 大模型

Model Average ARC HellaSwag MMLU TruthfulQA Winogrande GSM8K
mistralai/Mistral-7B-Instruct-v0.2 65.71 63.14 84.88 60.78 68.26 77.19 40.03
01-ai/Yi-34B-Chat 65.32 65.44 84.16 74.9 55.37 80.11 31.92
Qwen/Qwen1.5-14B-Chat 62.37 58.79 82.33 68.52 60.38 73.32 30.86
01-ai/Yi-6B-200K 56.76 53.75 75.57 64.65 41.56 73.64 31.39
Qwen/Qwen1.5-7B-Chat 55.15 55.89 78.56 61.65 53.54 67.72 13.57
01-ai/Yi-6B 54.08 55.55 76.57 64.11 41.96 74.19 12.13
deepseek-ai/deepseek-llm-7b-chat 59.38 55.8 79.38 51.75 47.98 74.82 46.55
internlm/internlm-20b-chat 55.53 55.38 78.58 58.53 43.22 78.77 18.73
deepseek-ai/deepseek-coder-7b-instruct-v1.5 50.89 48.55 72.35 50.45 46.73 66.85 20.39