编程表现比肩ChatGPT,这个新模型能力很强大
智谱8月底在国际数据挖掘与知识发现大会(KDD)上发布了新一代自主研发的新旗舰模型(GLM-4-Plus、GLM-4V-Plus、CogView-3-Plus),此次更新覆盖了语言理解、图像生成、视频理解等多个方面,并达到了国际第一梯队的水平。
本次发布较之前有以下更新:
- GLM-4-Plus(大语言模型):语言理解和长文本处理能力全面提升,支持128K上下文和多路Function Call。
- GLM-4V-Plus(图像和视频理解模型):具备卓越的图像和视频理解能力,支持8K上下文和多图输入,拥有时间感知能力。
- CogView-3-Plus:图像生成效果接近MJ-V6及FLUX等模型,支持精细化图像编辑。
作为智谱最新一代基座大模型GLM-4-Plus,通过多种方式构造出了海量高质量数据,并利用 PPO等多项技术,有效提升了模型推理、指令遵循等方面的表现,并能够更好地反映人类偏好。从benchmark上看,与 GPT-4o 等第一梯队模型差距很小。
图片
既然,官方说的这么好,那咱们就一定要去尝尝鲜,这些模型在智谱的开放平台( bigmodel.cn )就能体验。
咱也不让它写文章,做数学题了,这些网上很多文章都有介绍,咱们就让它做一次程序员,试试它的编程能力,顺便体验一下sdk的易用性。
我给它出了一道很常见的面试算法题“字符串全排列”,它很干脆的给出了结果,经过笔者验证,回答正确,看起来这些曾被大家“wow”的能力,在当下已经成为了基本功。这里有一个小细节,笔者在提示词里增加了不用解释这样的描述,GLM-4-Plus没有啰嗦解释,这说明指令遵从能力还可以,这一点对于LLM应用开发很重要。
from zhipuai import ZhipuAI
client = ZhipuAI(api_key="...")
def ai_programmer(task):
prompt = f"作为一个经验丰富的程序员,请帮我完成以下任务:{task},仅返回代码,不用解释"
response = client.chat.completions.create(
model="glm-4-plus",
messages=[
{
"role": "user",
"content": prompt
}
],
)
return response.choices[0].message
task = "写一个Python函数,实现字符串abc的全排列"
result = ai_programmer(task)
print(result.content)
# ```python
# def permute_abc(s):
# if len(s) == 1:
# return [s]
# permutations = []
# for i, char in enumerate(s):
# remaining = s[:i] + s[i+1:]
# for p in permute_abc(remaining):
# permutations.append(char + p)
# return permutations
# def all_permutations_abc():
# return permute_abc('abc')
# ```
当然,这个难度不大,很多模型都能做到,那我们调高难度,我拿了前两天ChatGPT及Cursor逆向工程压缩特效js的代码测试了GLM-4-Plus(延伸阅读:用ChatGPT逆向工程压缩后的Js代码,表现惊艳)。
glm-4-plus理解了代码,并给出了详细的解释。
接着,我让它对原代码进行了重构,使其变得更易读。
就从代码风格,变量、方法命名看,glm-4-plus表现的比chatGPT还要好,能够准确的起名和注释。但最后评价好不好,还得实测,笔者照例把它放到了v0chat上,按照同样的方式,让它调用glm-4-plus生成的组件,看看能不能还原预期的效果。
令人欣喜的是,超乎我的预期的是它一次性的就运行了起来,笔者同时还测试了一些国产模型,他们很遗憾并没能运行起来,也就无法对比实现的效果。看过之前文章的读者应该能发现,从实现的还原度来看,glm-4-plus与gpt-4o模型和claude-3.5-sonanet性能还有一些差距。这也反映当下一个事实,国内大模型这一年进步明显,但尚存差距,我们还得继续追赶。
总结
AI的世界每天都在变化,而智谱BigModel的发布,无疑是给了我们中国开发者一个大大的惊喜。无论是想做聊天机器人、图像处理还是视频分析,只要有创意,都可以尝试使用它们实现想法,而不用遗憾用不上领先模型的遗憾,这也能进一步激发LLM应用生态的繁荣。
本文转载自 AI工程化,作者: ully