递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
楼主: 飞扬工作室
打印 上一主题 下一主题

[官方] 关于 ai 对中文编程语言影响的讨论

  [复制链接]

78

主题

750

帖子

4401

积分

贵宾

Rank: 9Rank: 9Rank: 9

积分
4401
QQ
21#
发表于 2024-5-20 08:28:18 | 只看该作者
中文编程工具在AI盛行的时代并不一定会没落,反而,随着技术的发展和市场需求的增加,中文编程环境可能会迎来新的发展机遇。当前确实存在一些挑战,比如主流AI模型大多基于英文数据进行训练,导致在处理中文代码时可能存在理解或辅Zhu能力不足的问题。但这些问题可以通过以下几个方面来逐步解决:

增加中文编程数据集:构建并开放中文编程语料库,为AI模型提供足够的训练数据,是提升AI理解中文代码能力的基础。这包括收集和标注各种中文编程项目、代码片段等,以供模型学习。

多语言模型训练:随着技术的进步,开发能够理解多种语言的AI模型成为可能。通过在训练过程中加入中文编程数据,可以让AI模型学会理解和生成中文代码。已有研究开始探索如何使AI模型具备跨语言理解能力,这将有助于消除语言障碍。

特定领域AI模型定制:针对中文编程场景,可以专门训练AI助手或代码推荐系统,使其更擅长处理中文编程任务。这种定制化模型能够更好地服务于使用中文编程的开发者社区。

社区与开源推动:鼓励和支持中文编程社区的发展,促进中文编程工具和资源的共享。通过开源合作,加速技术创新和应用落地,提高中文编程环境的整体成熟度和影响力。

跨语言技术的应用:利用自然语言处理(NLP)中的机器翻译等技术,实现代码注释、文档乃至代码本身的自动翻译,使得中文代码能被更多国际化的AI工具和服务所理解,同时也方便中文开发者获取和利用英文资源。

综上所述,虽然当前中文编程工具在面对AI辅Zhu时存在一定的挑战,但通过数据集建设、模型训练优化、社区推动和技术创新等措施,这些劣势是可以被逐步克服的。未来,中文编程环境完全有可能在AI时代发挥其独特价值,满足特定用户群体的需求,并促进编程语言文化的多样性发展。
欢迎加入火山安卓交流群:623136156
回复

使用道具 举报

13

主题

53

帖子

1139

积分

金牌会员

Rank: 6Rank: 6

积分
1139
22#
发表于 2024-5-20 08:59:38 | 只看该作者
AI一出来我就一直用,我的回答是肯定不能代替人工的,至于以后很难说AI发展到什么程度,目前大家都是用他来辅Zhu一下找找API或问题提供一下某些软件的工作原理,至于要他帮你写整体的代码就是个医院跑出来,搞出来的代码都是应付
回复

使用道具 举报

78

主题

750

帖子

4401

积分

贵宾

Rank: 9Rank: 9Rank: 9

积分
4401
QQ
23#
发表于 2024-5-20 09:03:21 | 只看该作者
火山有自己的语法糖
英中编程工具代码互通存在障碍:
英文代码在火山当中无法直接使用,反之生成的源代码也无法在主流英文编程工具中进行使用

火山目前也没有对应的文档来喂AI训练模型,市面上主流AI训练模型也不支持中文代码。

目前火山要不解决语法糖问题
通过让更多的人学会封装
要不解决中文代码AI回答不了的问题
欢迎加入火山安卓交流群:623136156
回复

使用道具 举报

4

主题

186

帖子

637

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
637
24#
发表于 2024-5-20 09:09:14 | 只看该作者
本帖最后由 hrq520 于 2024-5-20 09:10 编辑

  
  吴总我说心里话,大家伙用火山和易语言,一是不懂英文编程,二是大的大佬可能精通各种语言。在此,非常非常感谢吴总易语言带我入门编程世界,转火山肯定是火山更强大,也因为是吴总的产品。

  AI编程:对精通各种语言的大佬来说,用火山纯属乐趣吧? 现在AI编程确实强大,但只针对功能区块,而不是从头开始,( 如果你真的有个项目要做,你会放心把所有代码交给AI吗? 可能吗?现实吗? )可能我愚昧  只看到表象。火山本身支持C++代码,AI可以给出C++代码的解决方案。也就是说火山并非完全和AI编程绝缘。我最近想起个复制文件反馈进度的功能,于是问了AI,给出如下代码:
  1. #include <iostream>
  2. #include <fstream>

  3. // 定义函数,用于复制文件并显示进度
  4. void copyFileWithProgress(const std::string& source, const std::string& destination) {
  5.     // 使用二进制模式打开源文件和目标文件
  6. <font color="#0000ff"><b>    std::ifstream src(source, std::ios::binary);
  7.     std::ofstream dst(destination, std::ios::binary);

  8.     // 检查文件是否成功打开
  9.     if (!src || !dst) {
  10.         std::cerr << "错误打开文件。" << std::endl;
  11.         return;
  12.     }

  13.     // 设置缓冲区大小为1MB
  14.     const size_t bufferSize = 1024 * 1024;
  15.     char buffer[bufferSize];
  16.     size_t totalBytes = 0; // 已复制的总字节数
  17.     size_t fileBytes = 0; // 文件总字节数

  18.     // 获取源文件的大小
  19.     src.seekg(0, std::ios::end);
  20.     fileBytes = src.tellg();
  21.     src.seekg(0, std::ios::beg);

  22.     // 复制文件内容
  23.     while (src.read(buffer, bufferSize)) {
  24.         dst.write(buffer, src.gcount());
  25.         totalBytes += src.gcount();
  26.         // 计算并显示进度
  27.         double progress = ((double)totalBytes / fileBytes) * 100.0;
  28.         std::cout << "正在复制文件... " << progress << "%" << std::flush;
  29.     }

  30.     // 处理剩余的字节
  31.     if (src.gcount()) {
  32.         dst.write(buffer, src.gcount());
  33.         totalBytes += src.gcount();
  34.     }

  35.     // 关闭文件流
  36.     src.close();
  37.     dst.close();</b></font>

  38.     std::cout << "\n文件复制成功。" << std::endl;
  39. }

  40. // 主函数入口
  41. int main() {
  42.     // 指定源文件和目标文件的路径
  43.     std::string sourceFile = "source.txt";
  44.     std::string destinationFile = "destination.txt";

  45.     // 调用函数复制文件并显示进度
  46.     copyFileWithProgress(sourceFile, destinationFile);

  47.     return 0;
  48. }
复制代码
我便复制方法体到新建程序下,至于头文件,我便用 视窗@外部头文件 引用了火山目录编译器的头文件
  D:\win_android\plugins\vprj_win\sdk\compiler\normal\VC\Tools\MSVC\14.29.30133\include\iostream
  D:\win_android\plugins\vprj_win\sdk\compiler\normal\VC\Tools\MSVC\14.29.30133\include\fstream


  ( 因为作为没经历过C++编程的小白,完全不知道这些头文件啥的,在哪下载,它里面又牵扯到啥文件结构,又要补充啥文件结构,想想就头疼 )

  新建方法给了两个文本参数,分别为 源文件名新文件名 替换例子中的 source destination
@ copyFileWithProgress(@<原文件名>, @<新文件名>);

就这么简单的例子,运行后,执行方法就报错
  
  其实在我看来,火山和AI编程并不冲突,最大问题在于AI给的例子如何才能高效简单的融合到火山里
  吴总,这个问题解决了,那就真的成了中国人,人人都用的顺手的好工具


  感谢!
  
  
  
回复

使用道具 举报

78

主题

750

帖子

4401

积分

贵宾

Rank: 9Rank: 9Rank: 9

积分
4401
QQ
25#
发表于 2024-5-20 09:25:52 | 只看该作者
火山主要还是在AI方面和新用户方面
如何吸引更年轻会多种主流编程语言的人士加入到火山平台。
火山平台可以比喻成围**,里面的人想出去外面的人想进来。

可以看到目前火山在回答用户问题方面缺乏专业人士进行回答
资料匮乏,基础资料和视频教程一大堆,凡是涉及@嵌入方面的教程也只有官方的封装手册,但官方封装手册也是存在弊端
只提供嵌入语法的说明和简单例子,并没有完整的火山当中如何进行使用的详细例子,就是看官方封装好的类库代码来学习封装
也是难度大,需要反复调试才能知道这个@嵌入是干嘛用的
欢迎加入火山安卓交流群:623136156
回复

使用道具 举报

54

主题

1372

帖子

7625

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
7625
26#
 楼主| 发表于 2024-5-20 09:55:32 | 只看该作者
我想大家可能有点误会,这个帖子完全就是纯粹的就事论事,从技术的角度讨论问题,把这个问题的当前实际情况讨论和分析清楚,以便让中文编程尽早发现自己的不足和需要改进的地方.

我一个人的想法可能会片面,可能会带有主观意识,也很可能有未考虑和了解到的地方,大家一起来讨论这个事情,就会越辩越明.

我从来没有任何想放弃中文编程的想法,随随便便就放弃不是我做事的风格. 我毕生的事业是"让所有国人都能写程序",这个目标没达成之前怎么可能放弃? 如果 ai 真能让我放弃,那就是通过它已经能够达成这个目标,至少目前,我还看不到.

其实我一直认为 ai 是人类最伟大的发明,很多旧有的规则将被其改写,很多行业将会被其颠覆. 我很认可利快云的看法,要积极主动地去拥抱和参与它. 实际上,火山本来就是基于诸多英文编程语言之上建立的,从最开始架构时就没有考虑到要与它们对立,这方面会是一个突破口,如果能让 ai 生成的英文代码无缝链接进火山,也就基本解决了这个问题. 等服务器子平台开发完毕进入正轨后,我要抽出时间来仔细考虑并处理这个问题.

感谢大家!
回复

使用道具 举报

2

主题

15

帖子

106

积分

注册会员

Rank: 2

积分
106
27#
发表于 2024-5-20 10:31:21 | 只看该作者
我是小白...但是我也经常用AI 大致说一下 AI 确实好用啊 你想要什么例子 就给你什么例子 就比如前几天我研究那个VEH断点hook 各种论坛找代码例子什么的 讲的其实不是很清楚 对于我这种小白来说 有点难 但是AI生成的代码 就很简单明了 甚至每段代码后边都有备注为什么要这段代码 有什么用 你只需要会 在main里调用他写好的函数 稍微修改需要的信息即可 相当方便
我觉得昂 对汉语编程肯定是有影响的 毕竟用汉语编程 大多数都是为了不背一长串的函数 省时间省力气 但是AI的完善 让这个东西 变的没有那么有优势了
然后就是火山本身的问题...虽然AI搞代码很方便,但是我内心其实也是比较喜欢中文编程 但是例子太少 这个比较关键....找东西找很久找不到,但是AI一搜就直接给你贴出来了代码 虽然说是能直接嵌入C的代码...但是一般来说....
另外我觉得也可以借用AI这个势头 自己训练一套专门的火山代码的AI(哪怕AI生成的是嵌入 就比如什么汇编加法 可以直接用这个方法) 因为我感觉...想要直接用AI的代码 一是确实需要一些C的知识 不是特别友好 二就是目前火山跟C嵌入代码互相调用啥的 感觉不是那么方便...
总的来说....我感觉是肯定有一定冲击的  纯小白发言 别打我
回复

使用道具 举报

28

主题

173

帖子

1513

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1513
QQ
28#
发表于 2024-5-20 10:39:21 | 只看该作者
目前来说,ai在编程领域来讲,只是个代替资料库的东西,比如之前要查书,后来要搜百度,现在ai可以根据你的描述给出更精准的一个代码片段,供你学习参考使用。就算现在的主流语言的模型,让他写一套可以运营的商城系统,他也搞不定吧。真正的ai是要像科幻电影里面那样的。除非来人高等级生命传播个新技术,不然致少我们这一代人是看不上了。

再说下吴大的火山,c++本身就是可以跨平台的,但不知为啥吴大没有去做这个支持,为了用户能更好的适应,把pc和安卓的语法统一,在原语言基础上又去套了一层,个人感觉这起了反作用,造成了原生代码移植到火山的难度,提高了火山深入一点的使用的门坎。出发点是为了做一个全面让用户使用方面的开发工具,结果现在做的是哪方面也涉足一点,但哪个也没做到精品。

火山的发展,现在既然做了GO,就做起来,暂时就别再扩展别的语言了。把go和c++这两个优化一下,记原生语言的代码更方便的移植到火山里面,修复更新一下现有的库,把生态做起来。c++和GO做好后端全平台的技持。

个人拙见,大佬见笑。
回复

使用道具 举报

23

主题

189

帖子

1450

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1450
29#
发表于 2024-5-20 10:45:06 | 只看该作者
记得初识中文编程还是08年易语言 那个时候是个井喷的年代,好多网站都出免费教程教大家使用易语言,这应该是中文编程最辉煌的时候!到了现在AI出来后,尝试过写一些程序单元确实十分方便便捷并且比我自己写的效率高方面全!其实写程序就是搭积木的过程,所以中文编程如果能汲取这些优势的话那么会更便捷,假如火山PC可以直接引用C++ 和直接插入C++代码,火山安卓能直接插入JAVA代码(不是修饰加工后的代码)那么火山还是有更多人加入进来的吧!
回复

使用道具 举报

5

主题

115

帖子

1183

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1183
30#
发表于 2024-5-20 10:45:47 | 只看该作者
ai 补助编程开发 ,可以让火山编程更快上手,不用到处找示例
凝逸AI:nyav.net、Ai图像识别
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-6-16 01:43 , Processed in 0.101455 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表