如何使用AI辅助开发

自从踏上AI辅助开发这条不归路,就回不了头,只能勇往直前!就算是简单的智能提示、补充代码、自动多语言补全等功能,就已经让你离不开它,更何况强大的代码生成成功。如果还没有开始使用AI辅助开发,那么赶快为自己的开发工具安装一个免费的AI助手,基本上目前流行的开发工具都会有对应的免费的辅助AI插件。

对于第一次使用AI辅助开发的开发者,记住一点:给出的问题,也就是需求,越详细,AI给的代码就越完整,功能也完善。本文将通过一个实例来探讨如何让AI助手生成满意的代码。

本文的开发环境为vs code,AI助手将使用Fitten Code扩展。安装完Fitten Code后,会在主侧边栏显示一个Fitten Code的图标,切换到Fitten Code,在底部会有一个输入框,输入想要的问题就能生成所需的代码。

现在,在输入框输入“使用Typescript创建一个仓储用来获取远程数据”并按回车发送,将会看到以下返回信息:
返回一
返回二
从生成的Repository类可以看到,已经生成了getAllgetById方法,并建议添加createupdatedelete 等方法。当然,你应该不会满足于此,获取数据时,分页、过滤和高级过滤等等功能还没添加,建议的三个方法也生成,这时候,就需要列一个详细的需求给它,让它生成更完整的代码。

下面在输入框输入以下需求:

使用Typescript创建一个仓储类用来获取远程数据并具有以下功能:
* 获取传递给构造函数的配置项pageSizes的第一数据作为当前的pageSize,并添加setPageSize方法来设置设置当前的pageSize,要验证设置的pageSize是否在pageSizes中,pageSize改变后,重新加载数据。添加getPageSize方法来获取当前的pageSize。
*  添加setPage方法来设置当前页,当前页改变后,重新加载数据。添加getPage方法来获取当前页,
* 添加filter方法来执行数据过滤
* 添加sort方法来对数据进行排序
* 添加search方法来对数据进行高级过滤
* 添加getTotal方法来获取记录总数
* 添加getPages方法来获取总页数
* 添加load方法来获取远程数据,在执行远程加载前,如果在构造函数中传入了beforeLoad函数,则先执行beforeLoad,如果返回false,则不执行数据加载。如果可以加载数据,则先调用getParams方法整合分页、过滤、高级过滤等数据,为加载数据提供参数。在数据加载后,如果从构造函数中传入了afterLoad函数,则执行afterLoad函数,然后触发laod事件。
* 添加create方法用来保存新记录
* 添加update方法用来更新记录
* 添加delete方法用来删除记录
* 添加一个方法用来获取单一数据

等待一会就会得到以下代码:

import axios, { AxiosResponse } from 'axios';interface RemoteData {id: number;name: string;// 其他字段...
}interface RepositoryConfig {baseUrl: string;pageSizes: number[];beforeLoad?: () => boolean;afterLoad?: (data: RemoteData[]) => void;
}class AdvancedRepository {private baseUrl: string;private pageSizes: number[];private pageSize: number;private page: number;private total: number;private data: RemoteData[];private beforeLoad?: () => boolean;private afterLoad?: (data: RemoteData[]) => void;constructor(config: RepositoryConfig) {this.baseUrl = config.baseUrl;this.pageSizes = config.pageSizes;this.pageSize = config.pageSizes[0];this.page = 1;this.total = 0;this.data = [];this.beforeLoad = config.beforeLoad;this.afterLoad = config.afterLoad;}public setPageSize(size: number): void {if (!this.pageSizes.includes(size)) {throw new Error('Invalid page size');}this.pageSize = size;this.load();}public getPageSize(): number {return this.pageSize;}public setPage(page: number): void {this.page = page;this.load();}public getPage(): number {return this.page;}public filter(filterFn: (item: RemoteData) => boolean): void {this.data = this.data.filter(filterFn);}public sort(sortFn: (a: RemoteData, b: RemoteData) => number): void {this.data.sort(sortFn);}public search(searchFn: (item: RemoteData) => boolean): void {this.data = this.data.filter(searchFn);}public getTotal(): number {return this.total;}public getPages(): number {return Math.ceil(this.total / this.pageSize);}public async load(): Promise<void> {if (this.beforeLoad && !this.beforeLoad()) {return;}const params = this.getParams();try {const response: AxiosResponse<{ data: RemoteData[]; total: number }> = await axios.get(`${this.baseUrl}/data`, { params });this.data = response.data.data;this.total = response.data.total;if (this.afterLoad) {this.afterLoad(this.data);}// 触发load事件} catch (error) {console.error('Error fetching data:', error);throw error;}}private getParams(): any {return {page: this.page,pageSize: this.pageSize,// 其他参数...};}public async create(data: RemoteData): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.post(`${this.baseUrl}/data`, data);this.load();return response.data;} catch (error) {console.error('Error creating data:', error);throw error;}}public async update(id: number, data: RemoteData): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.put(`${this.baseUrl}/data/${id}`, data);this.load();return response.data;} catch (error) {console.error('Error updating data:', error);throw error;}}public async delete(id: number): Promise<void> {try {await axios.delete(`${this.baseUrl}/data/${id}`);this.load();} catch (error) {console.error('Error deleting data:', error);throw error;}}public async getById(id: number): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.get(`${this.baseUrl}/data/${id}`);return response.data;} catch (error) {console.error(`Error fetching data with id ${id}:`, error);throw error;}}
}// 使用示例
const repo = new AdvancedRepository({baseUrl: 'https://api.example.com',pageSizes: [10, 20, 50],beforeLoad: () => {// 执行一些预加载逻辑return true;},afterLoad: (data) => {console.log('Data loaded:', data);}
});repo.load().then(() => {console.log('Data loaded');
}).catch(error => {console.error('Error:', error);
});

虽然代码不尽人意,但起码已具雏形。这时候你的选择可以是重新组织需求,再次生成,或者选择全部代码,在选择代码上单击鼠标右键,在右键菜单中选择Fitten Code - 开始聊天,然后在输入框中输入:

在filter方法中,用filter属性记录当前过滤值,然后重新调用load方法。sort和search方法与fitler方法类似。在数据加载后,从data中获取记录, 如果有afterLoad函数,则将afterLoad函数返回值作为data属性的值,在更新total后,根据pageSize重新计算pages。

以下是返回的代码:

import axios, { AxiosResponse } from 'axios';interface RemoteData {id: number;name: string;// 其他字段...
}interface RepositoryConfig {baseUrl: string;pageSizes: number[];beforeLoad?: () => boolean;afterLoad?: (data: RemoteData[]) => void;
}class Repository {private baseUrl: string;private pageSizes: number[];private pageSize: number;private page: number;private total: number;private data: RemoteData[];private beforeLoad?: () => boolean;private afterLoad?: (data: RemoteData[]) => void;private filterFn?: (item: RemoteData) => boolean;private sortFn?: (a: RemoteData, b: RemoteData) => number;private searchFn?: (item: RemoteData) => boolean;constructor(config: RepositoryConfig) {this.baseUrl = config.baseUrl;this.pageSizes = config.pageSizes;this.pageSize = config.pageSizes[0];this.page = 1;this.total = 0;this.data = [];this.beforeLoad = config.beforeLoad;this.afterLoad = config.afterLoad;}public setPageSize(size: number): void {if (!this.pageSizes.includes(size)) {throw new Error('Invalid page size');}this.pageSize = size;this.load();}public getPageSize(): number {return this.pageSize;}public setPage(page: number): void {this.page = page;this.load();}public getPage(): number {return this.page;}public filter(filterFn: (item: RemoteData) => boolean): void {this.filterFn = filterFn;this.load();}public sort(sortFn: (a: RemoteData, b: RemoteData) => number): void {this.sortFn = sortFn;this.load();}public search(searchFn: (item: RemoteData) => boolean): void {this.searchFn = searchFn;this.load();}public getTotal(): number {return this.total;}public getPages(): number {return Math.ceil(this.total / this.pageSize);}public async load(): Promise<void> {if (this.beforeLoad && !this.beforeLoad()) {return;}const params = this.getParams();try {const response: AxiosResponse<{ data: RemoteData[]; total: number }> = await axios.get(`${this.baseUrl}/data`, { params });let data = response.data.data;if (this.filterFn) {data = data.filter(this.filterFn);}if (this.sortFn) {data.sort(this.sortFn);}if (this.searchFn) {data = data.filter(this.searchFn);}this.data = data;this.total = response.data.total;if (this.afterLoad) {this.data = this.afterLoad(this.data);}} catch (error) {console.error('Error fetching data:', error);throw error;}}private getParams(): any {return {page: this.page,pageSize: this.pageSize,// 其他参数...};}public async create(data: RemoteData): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.post(`${this.baseUrl}/data`, data);this.load();return response.data;} catch (error) {console.error('Error creating data:', error);throw error;}}public async update(id: number, data: RemoteData): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.put(`${this.baseUrl}/data/${id}`, data);this.load();return response.data;} catch (error) {console.error('Error updating data:', error);throw error;}}public async delete(id: number): Promise<void> {try {await axios.delete(`${this.baseUrl}/data/${id}`);this.load();} catch (error) {console.error('Error deleting data:', error);throw error;}}public async getById(id: number): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.get(`${this.baseUrl}/data/${id}`);return response.data;} catch (error) {console.error(`Error fetching data with id ${id}:`, error);throw error;}}
}

从返回的代码可以看到,AI还是没完全领会,filter等是作为远程参数去获取数据,还是只做了本地过滤,这也只能怪自己没把需求说清楚。重复选择代码,开始聊天的操作并输入:

在getParams中整合filter、sort、search等信息作为远程查询的参数,而不是对返回的数据执行过滤和排序

以下是更新好的代码:

import axios, { AxiosResponse } from 'axios';interface RemoteData {id: number;name: string;// 其他字段...
}interface RepositoryConfig {baseUrl: string;pageSizes: number[];beforeLoad?: () => boolean;afterLoad?: (data: RemoteData[]) => void;
}class Repository {private baseUrl: string;private pageSizes: number[];private pageSize: number;private page: number;private total: number;private data: RemoteData[];private beforeLoad?: () => boolean;private afterLoad?: (data: RemoteData[]) => void;private filterParams?: any;private sortParams?: any;private searchParams?: any;constructor(config: RepositoryConfig) {this.baseUrl = config.baseUrl;this.pageSizes = config.pageSizes;this.pageSize = config.pageSizes[0];this.page = 1;this.total = 0;this.data = [];this.beforeLoad = config.beforeLoad;this.afterLoad = config.afterLoad;}public setPageSize(size: number): void {if (!this.pageSizes.includes(size)) {throw new Error('Invalid page size');}this.pageSize = size;this.load();}public getPageSize(): number {return this.pageSize;}public setPage(page: number): void {this.page = page;this.load();}public getPage(): number {return this.page;}public filter(filterParams: any): void {this.filterParams = filterParams;this.load();}public sort(sortParams: any): void {this.sortParams = sortParams;this.load();}public search(searchParams: any): void {this.searchParams = searchParams;this.load();}public getTotal(): number {return this.total;}public getPages(): number {return Math.ceil(this.total / this.pageSize);}public async load(): Promise<void> {if (this.beforeLoad && !this.beforeLoad()) {return;}const params = this.getParams();try {const response: AxiosResponse<{ data: RemoteData[]; total: number }> = await axios.get(`${this.baseUrl}/data`, { params });this.data = response.data.data;this.total = response.data.total;if (this.afterLoad) {this.data = this.afterLoad(this.data);}} catch (error) {console.error('Error fetching data:', error);throw error;}}private getParams(): any {const params: any = {page: this.page,pageSize: this.pageSize,// 其他参数...};if (this.filterParams) {Object.assign(params, this.filterParams);}if (this.sortParams) {Object.assign(params, this.sortParams);}if (this.searchParams) {Object.assign(params, this.searchParams);}return params;}public async create(data: RemoteData): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.post(`${this.baseUrl}/data`, data);this.load();return response.data;} catch (error) {console.error('Error creating data:', error);throw error;}}public async update(id: number, data: RemoteData): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.put(`${this.baseUrl}/data/${id}`, data);this.load();return response.data;} catch (error) {console.error('Error updating data:', error);throw error;}}public async delete(id: number): Promise<void> {try {await axios.delete(`${this.baseUrl}/data/${id}`);this.load();} catch (error) {console.error('Error deleting data:', error);throw error;}}public async getById(id: number): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.get(`${this.baseUrl}/data/${id}`);return response.data;} catch (error) {console.error(`Error fetching data with id ${id}:`, error);throw error;}}
}

如果觉得代码还是不太满意,可以继续重复以下操作更改代码直到满意,还可以选择代码后,在选择代码上单击鼠标右键选择Fitter Code - 优化代码,让它自己去优化代码,返回结果如下:

import axios, { AxiosResponse } from 'axios';interface RemoteData {id: number;name: string;// 其他字段...
}interface RepositoryConfig {baseUrl: string;pageSizes: number[];beforeLoad?: () => boolean;afterLoad?: (data: RemoteData[]) => void;
}class Repository {private baseUrl: string;private pageSizes: number[];private pageSize: number;private page: number;private total: number;private data: RemoteData[];private beforeLoad?: () => boolean;private afterLoad?: (data: RemoteData[]) => void;private filterParams?: any;private sortParams?: any;private searchParams?: any;constructor(config: RepositoryConfig) {this.baseUrl = config.baseUrl;this.pageSizes = config.pageSizes;this.pageSize = config.pageSizes[0];this.page = 1;this.total = 0;this.data = [];this.beforeLoad = config.beforeLoad;this.afterLoad = config.afterLoad;}public setPageSize(size: number): void {if (!this.pageSizes.includes(size)) {throw new Error('Invalid page size');}this.pageSize = size;this.load();}public getPageSize(): number {return this.pageSize;}public setPage(page: number): void {this.page = page;this.load();}public getPage(): number {return this.page;}public filter(filterParams: any): void {this.filterParams = filterParams;this.load();}public sort(sortParams: any): void {this.sortParams = sortParams;this.load();}public search(searchParams: any): void {this.searchParams = searchParams;this.load();}public getTotal(): number {return this.total;}public getPages(): number {return Math.ceil(this.total / this.pageSize);}public async load(): Promise<void> {if (this.beforeLoad && !this.beforeLoad()) {return;}const params = this.getParams();try {const response: AxiosResponse<{ data: RemoteData[]; total: number }> = await axios.get(`${this.baseUrl}/data`, { params });this.data = response.data.data;this.total = response.data.total;if (this.afterLoad) {this.data = this.afterLoad(this.data);}} catch (error) {console.error('Error fetching data:', error);throw error;}}private getParams(): any {const params: any = {page: this.page,pageSize: this.pageSize,// 其他参数...};if (this.filterParams) {Object.assign(params, this.filterParams);}if (this.sortParams) {Object.assign(params, this.sortParams);}if (this.searchParams) {Object.assign(params, this.searchParams);}return params;}public async create(data: RemoteData): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.post(`${this.baseUrl}/data`, data);this.load();return response.data;} catch (error) {console.error('Error creating data:', error);throw error;}}public async update(id: number, data: RemoteData): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.put(`${this.baseUrl}/data/${id}`, data);this.load();return response.data;} catch (error) {console.error('Error updating data:', error);throw error;}}public async delete(id: number): Promise<void> {try {await axios.delete(`${this.baseUrl}/data/${id}`);this.load();} catch (error) {console.error('Error deleting data:', error);throw error;}}public async getById(id: number): Promise<RemoteData> {try {const response: AxiosResponse<RemoteData> = await axios.get(`${this.baseUrl}/data/${id}`);return response.data;} catch (error) {console.error(`Error fetching data with id ${id}:`, error);throw error;}}
}

在通过手动和互动等方法完成代码后,就可以让AI帮忙生成完整的单元测试代码,获得最终的代码了。

从以上的探讨过程可以看到,AI还不能做到尽善尽美,但已经可以大大提高开发效率了。不过要注意的是,有时候AI会陷入死循环,譬如说A这样会导致问题B,然后它去改,问题B解决了,但会出现A的问题没有解决,然后它就进入死循环,A和B来回切换,这时候,就要换个思路了,不要和它继续纠缠下去,不然会很累。可行的办法有换个解决问题的思路,或者找其他免费的AI辅助,如千义通问等等,这些AI各具特色,有自己擅长的东西,多问几个,会获得更精准的解决方案。笔者觉得更重要的是,提高自己的设计能力和需求讲述能力,将可大大释放AI的能力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3248720.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

C++复习的长文指南

C复习的长文指南 一、入门语法知识1.预备1.1 main函数1.2 注释1.3 变量1.3 常量1.4 关键字1.5 标识符明明规则 2. 数据类型2.1 整型2.1.1 sizeof关键字 2.2 实型&#xff08;浮点型&#xff09;2.3 字符型2.4 转义字符2.5 字符串型2.6 布尔类型bool2.7 数据的输入 3. 运算符3.1…

windows 11 PC查询连接过的wlan密码

1:管理员打开cmd 2:输入netsh wlan show profiles 3:netsh wlan show profiles Shw2024-5G keyclear 密码关键内容&#xff1a;12345678

函数返回右值的一点学习研究

https://zhuanlan.zhihu.com/p/511371573?utm_mediumsocial&utm_oi939219201949429760 下面情况下不会调用&#xff1a; DPoint3d fun1() {return DPoint3d{1,2,3}; // 默认构造 }int main() {DPoint3d&& a fun1();a.y 20;int i 0;i; } 下面情况下&#xff0c…

Stable Diffusion:质量高画风清新细节丰富的二次元大模型二次元插图

今天和大家分享一个基于Pony模型训练的二次元模型&#xff1a;二次元插图。关于该模型有4个不同的分支版本。 1.5版本&#xff1a;loar模型&#xff0c;推荐底模型niji-动漫二次元4.5。 xl版本&#xff1a;SDXL模型版本 mix版本&#xff1a;光影减弱&#xff0c;减少SDXL版本…

[职场] MARKETINGSPECIALIST是什么 #笔记#微信#知识分享

MARKETINGSPECIALIST是什么 MARKETINGSPECIALIST&#xff0c;即市场营销专员&#xff0c;他们需要具备一定的专业知识和技能&#xff0c;以适应快速变化的市场环境。接下来&#xff0c;我们将详细探讨这个职位的工作内容、必备技能以及发展前景。 一、MARKETINGSPECIALIST是什么…

Postfix搭建安装教程:解决配置难题攻略!

Postfix搭建安装教程的详解&#xff01;如何优化邮件服务器性能&#xff1f; Postfix是一款广泛使用的电子邮件服务器软件&#xff0c;以其高效、可靠和安全性而闻名。许多企业和个人站点都选择Postfix来处理邮件传输任务。AokSend将提供一个详尽的Postfix搭建安装教程。 Pos…

我在高职教STM32——串口通信(1)

大家好&#xff0c;我是老耿&#xff0c;高职青椒一枚&#xff0c;一直从事单片机、嵌入式、物联网等课程的教学。对于高职的学生层次&#xff0c;同行应该都懂的&#xff0c;老师在课堂上教学几乎是没什么成就感的。正是如此&#xff0c;才有了借助头条平台寻求认同感和成就感…

水利行业的智慧转型之路:分析智慧水利的核心要素与优势,展望其在提升水资源利用效率、保障水安全方面的广阔前景

目录 引言 一、智慧水利的核心要素 1. 物联网技术 2. 大数据与云计算 3. 人工智能与机器学习 4. 移动互联网与GIS技术 5. 标准化与信息安全 二、智慧水利的优势 1. 提高水资源利用效率 2. 增强水灾害防御能力 3. 提升水环境治理水平 4. 促进水利服务智能化 三、展望…

5.6 软件工程-运维

运维 - 系统转换 运维 - 系统维护 运维 - 系统评价 真题

深入理解JVM内存管理:从区域划分到优化策略

JVM内存区域划分有哪些&#xff1f; 堆内存&#xff1a;分为新生代和老年代 新生代&#xff1a;临时对象&#xff0c;所有对象最开始都是年轻代&#xff0c;使用完会被回收或转入老年代 老年代&#xff1a;长期存在的对象 进入老年代的情况&#xff1a; 1.新生代垃圾回收超…

python ATM实现

代码要求&#xff1a; 详细代码&#xff1a; money 50000000 name input("输入您的姓名 &#xff1a;")#查询功能 def search(show_header):if show_header:print("--------查询余额--------")print(f"{name}&#xff0c;您好&#xff0c;您的余额…

模板方法原理与C++实现

定义 定义一个操作中的算法骨架&#xff08;稳定的&#xff09;&#xff0c;而将一些步骤的实现延迟到子类中&#xff08;变化的&#xff09;。模板方法使得子类可以复用一个算法的结构&#xff0c;而只改变&#xff08;重写&#xff09;这个算法的特定步骤。 C实现 class L…

为ppt中的文字配色

文字的颜色来源于ppt不可删去的图像的颜色 从各类搜索网站中搜索ppt如何配色&#xff0c;有如下几点&#xff1a; 1.可以使用对比色&#xff0c;表示强调。 2.可以使用近似色&#xff0c;使得和谐统一。 3.最好一张ppt中&#xff0c;使用的颜色不超过三种主要颜色。 但我想强调…

【细如狗】记录一次使用MySQL的Binlog进行数据回滚的完整流程

文章目录 1 事情起因2 解决思路3 利用binlog进行数据回滚3.1 确认是否启用Binlog日志3.2 确认是否有binlog文件3.3 找到误操作的时间范围3.4 登录MySQL服务器查找binlog文件3.4.1 查询binlog文件路径3.4.2 找到binlog文件3.4.3 确认误操作被存储在哪一份binlog文件中 3.5 查看二…

嵌入式人工智能(9-基于树莓派4B的DS1302实时时钟RTC)

1、实时时钟&#xff08;Real Time Clock&#xff09; RTC&#xff0c;全称为实时时钟&#xff08;Real Time Clock&#xff09;&#xff0c;是一种能够提供实时时间信息的电子设备。RTC通常包括一个计时器和一个能够记录日期和时间的电池。它可以独立于主控芯片工作&#xff…

N Puzzle (数字推盘游戏)

N Puzzle [数字推盘游戏] 1. 15 Puzzle2. N PuzzleReferences puzzle /ˈpʌzl/&#xff1a;n. 谜&#xff0c;智力游戏&#xff0c;疑问&#xff0c;不解之谜&#xff0c;令人费解的事 vt. 迷惑&#xff0c;使困惑1. 15 Puzzle https://en.wikipedia.org/wiki/15_puzzle The…

【Python脚本】读取execl表格域名到期时间进行筛选通过webhook进行通知

【Python脚本】读取execl表格域名到期时间进行筛选通过webhook进行通知 execl表格示例: import pandas as pd import requestsdf = pd.read_excel(D:\xx\xx\SSL.xlsx, sheet_name=None)webhook_url = "https://open.feishu.cn/open-apis/bot/v2/XXX?"for sheet_na…

高校如何拥抱国产化OS?中南民族大学信息化应用实践

CentOS 已然停服&#xff0c;数量众多的使用 CentOS 的企业以及高校&#xff0c;都面临着系统替换的迫切需求。国产化操作系统候选者众多&#xff0c;如何在兼顾原有系统兼容性的基础上&#xff0c;在国产化操作系统进行整体环境的平稳迁移&#xff0c;成为在选择 CentOS 替换方…

滑动窗口题目

题目描述&#xff1a; 计算两个字符串str1和str2在给定的含有n个元素的字符串数组strs中出现的最短距离。 详细解释&#xff1a; 定义整数变量n&#xff0c;用于存储字符串数组strs的长度。定义一个vector<string>类型的变量strs&#xff0c;用于存储输入的字符串。定义…

昇思25天学习打卡营第18天|RNN实现情感分类

相关知识 情感分类 指输入一段话或句子&#xff0c;返回该段话的正向或复兴的情感分类。 text embedding 指将文本转化成向量的方法。这里的文本指词、句子、文档等文本序列。 词向量化后会将词转为二进制(独热编码)或高维实数向量&#xff0c;句子和文档向量化则将句子或文…