THUDM / CodeGeeX2

CodeGeeX2: A More Powerful Multilingual Code Generation Model
https://codegeex.cn
Apache License 2.0
7.63k stars 533 forks source link

需要加强C#语言支持 #1

Closed sdcb closed 1 year ago

sdcb commented 1 year ago

CodeGeeX2没有描述对C#语言的提升程度,只描述了对C++、Python、Java、JavaScript、Go、Rust有许多加强,希望能同时加入对C#语言的能力描述。

Stanislas0 commented 1 year ago

您好,C#还没有相关的测试集,之后会考虑补充。CodeGeeX2的C#同样也是有提升的,可以尝试一下插件中C#的效果。

sdcb commented 1 year ago

image 亲测了,目前C#的状态比较堪忧,希望在下一个版本中加强,C#开发者还是很庞大的。

sdcb commented 1 year ago

另一个示例,请他写个hello world,更加离谱: image

sdcb commented 1 year ago

image 看来主要应该是对python支持得比较好,输入Javascript仍然输出python

sdcb commented 1 year ago

image

Stanislas0 commented 1 year ago

@sdcb Hi,你跑的结果是有问题的。开源的 CodeGeeX2-6B 是一个基座代码模型,它的使用方式是偏补全的,要按照某种语言的编程习惯来使用。比如C#应该使用“//”的注释符号,语言标签应该是// language: C#,prompt是// [prompt]。你的例子中使用了“#”,这是Python特有的注释符号,自然就生成了Python代码。正确的使用方式是像以下这个例子([运行代码] (https://github.com/THUDM/CodeGeeX2/blob/main/demo/run_demo.py)):

CleanShot 2023-07-26 at 21 43 09@2x

当然也可以直接尝试CodeGeeX插件中的对话功能,是经过指令微调的,生成结果更加准确:

CleanShot 2023-07-26 at 21 44 23@2x
sdcb commented 1 year ago

感谢指出,那我应该找机会再去测测!

lonngxiang commented 1 year ago

@sdcb Hi,你跑的结果是有问题的。开源的 CodeGeeX2-6B 是一个基座代码模型,它的使用方式是偏补全的,要按照某种语言的编程习惯来使用。比如C#应该使用“//”的注释符号,语言标签应该是// language: C#,prompt是// [prompt]。你的例子中使用了“#”,这是Python特有的注释符号,自然就生成了Python代码。正确的使用方式是像以下这个例子([运行代码] (https://github.com/THUDM/CodeGeeX2/blob/main/demo/run_demo.py)):%EF%BC%89%EF%BC%9A)

CleanShot 2023-07-26 at 21 43 09@2x

当然也可以直接尝试CodeGeeX插件中的对话功能,是经过指令微调的,生成结果更加准确:

CleanShot 2023-07-26 at 21 44 23@2x

为啥按格式输入,无结果输出呢 image