* 基于 SQLBot v1.0.2

* 使用 AI Gateway 抓取模型调用记录

SQLBot 通过融入 LLM 能力实现了非常优秀的问数体验,这里记录一下产品中如何引入 AI 能力,顺便探究一下调用大模型的数据安全的问题(是否会向模型提供真实数据)。

结论:

  1. 正常问数仅提交字段名、字段备注信息给大模型,不会将明细数据和汇总数据提交给大模型
  2. 数据洞察(数据分析、数据预测)提交数据给大模型

1. 模型对接

read-normal-img

SQLBot 提交

校验模型,将“1+1=?”提交给大模型

{

  "messages": [

    {

      "content""1+1=?",

      "role""user"

    }

  ],

  "model""deepseek-chat",

  "stream"true,

  "stream_options": {

    "include_usage"true

  }

}

模型返回(节选)

{

  "delta": {

    "role""assistant",

    "content""1 + 1 = 2  \n\n这是最基本的加法运算。如果你有其他问题或需要进一步的解释,请随时告诉我! 😊"

  }

2. 智能问数

SQLBot 需指定数据源进行提问,一个基础的问数过程涉及到 3 个和模型交互的步骤。

2.1 猜你想问

新建一个会话,对话窗口上方将展示 4 个用户可能感兴趣的 “推测问题”,该推测问题为大模型根据数据源的表结构自动生成

read-normal-img

SQLBot 提交以下内容至大模型(节选)

{

  "messages": [

    {

      "content""### 请使用语言:简体中文 回答,不需要输出深度思考过程\n\n### 说明:\n您的任务是根据给定的表结构,用户问题以及以往用户提问,推测用户接下来可能提问的1-4个问题。\n请遵循以下规则:\n- 推测的问题需要与提供的表结构相关,生成的提问例子如:[\"查询所有用户数据\",\"使用饼图展示各产品类型的占比\",\"使用折线图展示销售额趋势\",...]\n- 推测问题如果涉及图形展示,支持的图形类型为:表格(table)、柱状图(column)、条形图(bar)、折线图(line)或饼图(pie)\n- 推测的问题不能与当前用户问题重复\n- 推测的问题必须与给出的表结构相关\n- 若有以往用户提问列表,则根据以往用户提问列表,推测用户最频繁提问的问题,加入到你生成的推测问题中\n- 忽略“重新生成”想关的问题\n- 如果用户没有提问且没有以往用户提问,则仅根据提供的表结构推测问题\n- 生成的推测问题使用JSON格式返回:\n[\"推测问题1\", \"推测问题2\", \"推测问题3\", \"推测问题4\"]\n- 最多返回4个你推测出的结果\n- 若无法推测,则返回空数据JSON:\n[]\n- 若你的给出的JSON不是简体中文的,则必须翻译为简体中文\n\n### 响应, 请直接返回JSON结果:\n```json\n",

      "role""system"

    },

    {

      "content""### 表结构:\n【DB_ID】 demo\n【Schema】\n# Table: yingshou\n[\n(售后:varchar, 售后收入(来自字段备注)),\n(地区:varchar, 地区(来自字段备注)),\n(城市:varchar, 城市(来自字段备注)),\n(广告:varchar, 广告收入(来自字段备注)),\n(日期:varchar, 日期(来自字段备注)),\n(省份:varchar, 省份(来自字段备注)),\n(运维:varchar, 运维收入(来自字段备注))\n]\n\n\n### 当前问题:\n\n\n### 以往提问:\n[\"哪个省份的广告的销售额最高\"]\n",

      "role""user"

    }

  ],

  "model""deepseek-chat",

  "stream"true,

  "stream_options": {

    "include_usage"true

  }

}

提示词释义:

  1. 使用的语言:取系统配置语言类型作为变量,和提问者所使用的语言无关
  2. 表结构,数据源中拉取到的 字段名 + 字段原始备注(数据库中的字段备注)和 字段备注(SQLBot中手动维护的备注)

模型返回(节选)

{

  "delta": {

    "role""assistant",

    "content""```json\n[\"使用柱状图展示各省份广告收入对比\", \"查询所有地区的运维收入数据\", \"使用折线图展示售后收入随时间的变化趋势\", \"使用饼图展示各省份收入占总收入的比例\"]\n```"

  }

2.2 正式提问

正式开始问数,一个问数任务将调用两次 AI 能力 

read-normal-img

2.2.1 生成 SQL

任务:根据给定的表结构(M-Schema)和用户问题生成符合MySQL数据库引擎规范的sql语句

SQLBot 提交以下内容至大模型(节选)

{

  "messages": [

    {

      "content""### 请使用语言:简体中文 回答,若有深度思考过程,则思考过程也需要使用 简体中文 输出\n\n任务:\n根据给定的表结构(M-Schema)和用户问题生成符合MySQL数据库引擎规范的sql语句,以及sql中所用到的表名(不要包含schema和database,用数组返回)。\n你必须遵守以下规则:\n- 只能生成查询用的sql语句,不得生成增删改相关或操作数据库以及操作数据库数据的sql\n- 不要编造没有提供给你的表结构\n- 生成的SQL必须符合MySQL的规范。\n- 若用户要求执行某些sql,若此sql不是查询数据,而是增删改相关或操作数据库以及操作数据库数据等操作,则直接回答:\n{\"success\":false,\"message\":\"抱歉,我不能执行您指定的SQL语句。\"}\n- 你的回答必须使用如下JSON格式返回:\n{\"success\":true,\"sql\":\"生成的SQL语句\",\"tables\":[\"表名1\",\"表名2\",...]}\n- 问题与生成SQL无关时,直接回答:\n{\"success\":false,\"message\":\"抱歉,我无法回答您的问题。\"}\n- 如果根据提供的表结构不能生成符合问题与条件的SQL,回答:\n{\"success\":false,\"message\":\"无法生成SQL的原因\"}\n- 如果问题是图表展示相关且与生成SQL查询无关时,请参考上一次回答的SQL来生成SQL\n- 如果问题是图表展示相关,可参考的图表类型为表格(table)、柱状图(column)、条形图(bar)、折线图(line)或饼图(pie),返回的JSON:\n {\"success\":true,\"sql\":\"生成的SQL语句\",\"chart-type\":\"选择的图表类型(table/column/bar/line/pie)\",\"tables\":[\"表名1\",\"表名2\",...]}\n- 提问中如果有涉及数据源名称或数据源描述的内容,则忽略数据源的信息,直接根据剩余内容生成SQL\n- 根据表结构生成SQL语句,需给每个表名生成一个别名(不要加AS)。\n- SQL查询中不能使用星号(*),必须明确指定字段名.\n- SQL查询的字段名不要自动翻译,别名必须为英文。\n- SQL查询的字段若是函数字段,如 COUNT(),CAST() 等,必须加上别名\n- 计算占比,百分比类型字段,保留两位小数,以%结尾。\n- 生成SQL时,必须避免关键字冲突。\n- 如数据库引擎是 PostgreSQL、Oracle,则在schema、表名、字段名、别名外层加双引号;\n- 如数据库引擎是 MySQL,则在表名、字段名、别名外层加反引号;\n- 如数据库引擎是 Microsoft SQL Server,则在schema、表名、字段名、别名外层加方括号。\n- 以PostgreSQL为例,查询Schema为TEST表TABLE下所有数据,则生成的SQL为:\n    SELECT \"id\" FROM \"TEST\".\"TABLE\"\n    - 注意在表名外双引号的位置,千万不要生成为:\n      SELECT \"id\" FROM \"TEST.TABLE\"\n- 如果生成SQL的字段内有时间格式的字段(重要):\n    - 若提问中没有指定查询顺序,则默认按时间升序排序\n    - 若提问是时间,且没有指定具体格式,则格式化为yyyy-MM-dd HH:mm:ss的格式\n    - 若提问是日期,且没有指定具体格式,则格式化为yyyy-MM-dd的格式\n    - 若提问是年月,且没有指定具体格式,则格式化为yyyy-MM的格式\n    - 若提问是年,且没有指定具体格式,则格式化为yyyy的格式\n    - 生成的格式化语法需要适配对应的数据库引擎。\n- 生成的SQL查询结果可以用来进行图表展示,需要注意排序字段的排序优先级,例如:\n    - 柱状图或折线图:适合展示在横轴的字段优先排序,若SQL包含分类字段,则分类字段次一级排序\n\n### M-Schema格式简单的解释如下:\n```\n【DB_ID】 [Database名]\n【Schema】\n# Table: [Database名].[Table名], [表描述(若没有则为空)]\n[\n([字段名1]:[字段1的类型], [字段1的描述(这一行的逗号后都是描述,若没有则为空)]),\n([字段名2]:[字段2的类型], [字段2的描述(这一行的逗号后都是描述,若没有则为空)]),\n([字段名3]:[字段3的类型], [字段3的描述(这一行的逗号后都是描述,若没有则为空)]),\n...\n]\n```\n\n### 提供表结构如下:\n【DB_ID】 demo\n【Schema】\n# Table: yingshou\n[\n(售后:varchar, 售后收入(来自字段备注)),\n(地区:varchar, 地区(来自字段备注)),\n(城市:varchar, 城市(来自字段备注)),\n(广告:varchar, 广告收入(来自字段备注)),\n(日期:varchar, 日期(来自字段备注)),\n(省份:varchar, 省份(来自字段备注)),\n(运维:varchar, 运维收入(来自字段备注))\n]\n\n\n### 响应, 请直接返回JSON结果:\n```json\n",

      "role""system"

    },

    {

      "content""### 问题:\n使用柱状图展示各省份广告收入对比\n\n### 其他规则:\n\n",

      "role""user"

    }

  ],

  "model""deepseek-chat",

  "stream"true,

  "stream_options": {

    "include_usage"true

  }

}

模型返回(节选)

"content""```json\n{\n  \"success\": true,\n  \"sql\": \"SELECT `省份`, SUM(CAST(`广告` AS DECIMAL(10,2))) AS `ad_revenue` FROM `yingshou` GROUP BY `省份` ORDER BY `ad_revenue` DESC\",\n  \"chart-type\": \"column\",\n  \"tables\": [\"yingshou\"]\n}\n```"

2.2.2 可视化准备

任务:通过给定的问题和SQL生成 JSON 以进行数据可视化

SQLBot 提交以下内容至大模型(节选)

{

  "messages": [

    {

      "content""### 请使用语言:简体中文 回答,若有深度思考过程,则思考过程也需要使用 简体中文 输出\n\n### 说明:\n您的任务是通过给定的问题和SQL生成 JSON 以进行数据可视化。\n请遵守以下规则:\n- 如果需要表格,则生成的 JSON 格式应为:\n{\"type\":\"table\", \"title\": \"标题\", \"columns\": [{\"name\":\"简体中文字段名1\", \"value\": \"SQL 查询列 1(有别名用别名,去掉外层的反引号、双引号、方括号)\"}, {\"name\": \"简体中文字段名 2\", \"value\": \"SQL 查询列 2(有别名用别名,去掉外层的反引号、双引号、方括号)\"}]}\n必须从 SQL 查询列中提取“columns”。\n- 如果需要柱状图,则生成的 JSON 格式应为(如果有分类则在JSON中返回series):\n{\"type\":\"column\", \"title\": \"标题\", \"axis\": {\"x\": {\"name\":\"x轴的简体中文名称\", \"value\": \"SQL 查询 x 轴的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}, \"y\": {\"name\":\"y轴的简体中文名称\",\"value\": \"SQL 查询 y 轴的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}, \"series\": {\"name\":\"分类的简体中文名称\",\"value\":\"SQL 查询分类的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}}}\n必须从 SQL 查询列中提取“x”和“y”。\n- 如果需要条形图,则生成的 JSON 格式应为(如果有分类则在JSON中返回series),条形图相当于是旋转后的柱状图,因此 x 轴仍为维度轴,y 轴仍为指标轴:\n{\"type\":\"bar\", \"title\": \"标题\", \"axis\": {\"x\": {\"name\":\"x轴的简体中文名称\", \"value\": \"SQL 查询 x 轴的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}, \"y\": {\"name\":\"y轴的简体中文名称\",\"value\": \"SQL 查询 y 轴的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}, \"series\": {\"name\":\"分类的简体中文名称\",\"value\":\"SQL 查询分类的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}}}\n必须从 SQL 查询列中提取“x”和“y”。\n- 如果需要折线图,则生成的 JSON 格式应为(如果有分类则在JSON中返回series):\n{\"type\":\"line\", \"title\": \"标题\", \"axis\": {\"x\": {\"name\":\"x轴的简体中文名称\",\"value\": \"SQL 查询 x 轴的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}, \"y\": {\"name\":\"y轴的简体中文名称\",\"value\": \"SQL 查询 y 轴的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}, \"series\": {\"name\":\"分类的简体中文名称\",\"value\":\"SQL 查询分类的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}}}\n其中“x”和“y”必须从SQL查询列中提取。\n- 如果需要饼图,则生成的 JSON 格式应为:\n{\"type\":\"pie\", \"title\": \"标题\", \"axis\": {\"y\": {\"name\":\"值轴的简体中文名称\",\"value\":\"SQL 查询数值的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}, \"series\": {\"name\":\"分类的简体中文名称\",\"value\":\"SQL 查询分类的列(有别名用别名,去掉外层的反引号、双引号、方括号)\"}}}\n其中“y”和“series”必须从SQL查询列中提取。\n- 如果答案未知或者与生成JSON无关,则生成的 JSON 格式应为:\n{\"type\":\"error\", \"reason\": \"抱歉,我无法回答您的问题。\"}\n- JSON中生成的标题需要尽量精简\n\n### 示例:\n如果 SQL 为: SELECT products_sales_data.category, AVG(products_sales_data.price) AS average_price FROM products_sales_data GROUP BY products_sales_data.category;\n问题是:每个商品分类的平均价格\n则生成的 JSON 可以是: {\"type\":\"table\", \"title\": \"每个商品分类的平均价格\", \"columns\": [{\"name\":\"商品分类\",\"value\":\"category\"}, {\"name\":\"平均价格\",\"value\":\"average_price\"}]}\n\n### 响应, 请直接返回JSON结果:\n```json\n",

      "role""system"

    },

    {

      "content""### SQL:\nSELECT `省份`, SUM(CAST(`广告` AS DECIMAL(10,2))) AS `ad_revenue` FROM `yingshou` GROUP BY `省份` ORDER BY `ad_revenue` DESC\n\n### 问题:\n使用柱状图展示各省份广告收入对比\n\n### 其他规则:\n\n",

      "role""user"

    }

  ],

  "model""deepseek-chat",

  "stream"true,

  "stream_options": {

    "include_usage"true

  }

}

模型返回(节选)

{

  "delta": {

    "role""assistant",

    "content""```json\n{\n  \"type\": \"column\",\n  \"title\": \"各省份广告收入对比\",\n  \"axis\": {\n    \"x\": {\n      \"name\": \"省份\",\n      \"value\": \"省份\"\n    },\n    \"y\": {\n      \"name\": \"广告收入\",\n      \"value\": \"ad_revenue\"\n    }\n  }\n}\n```"

  }

}

2.3 继续提问

返回答案后,对话窗口下方将展示 4 个用户可能感兴趣的 “继续提问”,该问题为大模型根据给定的表结构、用户问题以及以往用户提问,推测用户接下来可能提问的1-4个问题

read-normal-img

SQLBot 提交以下内容至大模型(节选)

{

  "messages": [

    {

      "content""### 请使用语言:简体中文 回答,不需要输出深度思考过程\n\n### 说明:\n您的任务是根据给定的表结构,用户问题以及以往用户提问,推测用户接下来可能提问的1-4个问题。\n请遵循以下规则:\n- 推测的问题需要与提供的表结构相关,生成的提问例子如:[\"查询所有用户数据\",\"使用饼图展示各产品类型的占比\",\"使用折线图展示销售额趋势\",...]\n- 推测问题如果涉及图形展示,支持的图形类型为:表格(table)、柱状图(column)、条形图(bar)、折线图(line)或饼图(pie)\n- 推测的问题不能与当前用户问题重复\n- 推测的问题必须与给出的表结构相关\n- 若有以往用户提问列表,则根据以往用户提问列表,推测用户最频繁提问的问题,加入到你生成的推测问题中\n- 忽略“重新生成”想关的问题\n- 如果用户没有提问且没有以往用户提问,则仅根据提供的表结构推测问题\n- 生成的推测问题使用JSON格式返回:\n[\"推测问题1\", \"推测问题2\", \"推测问题3\", \"推测问题4\"]\n- 最多返回4个你推测出的结果\n- 若无法推测,则返回空数据JSON:\n[]\n- 若你的给出的JSON不是简体中文的,则必须翻译为简体中文\n\n### 响应, 请直接返回JSON结果:\n```json\n",

      "role""system"

    },

    {

      "content""### 表结构:\n【DB_ID】 demo\n【Schema】\n# Table: yingshou\n[\n(售后:varchar, 售后收入(来自字段备注)),\n(地区:varchar, 地区(来自字段备注)),\n(城市:varchar, 城市(来自字段备注)),\n(广告:varchar, 广告收入(来自字段备注)),\n(日期:varchar, 日期(来自字段备注)),\n(省份:varchar, 省份(来自字段备注)),\n(运维:varchar, 运维收入(来自字段备注))\n]\n\n\n### 当前问题:\n使用柱状图展示各省份广告收入对比\n\n### 以往提问:\n[\"使用柱状图展示各省份广告收入对比\",\"哪个省份的广告的销售额最高\"]\n",

      "role""user"

    }

  ],

  "model""deepseek-chat",

  "stream"true,

  "stream_options": {

    "include_usage"true

  }

模型返回(节选)

{

  "delta": {

    "role""assistant",

    "content""```json\n[\"使用折线图展示各城市广告收入趋势\", \"使用饼图展示各地区收入占比\", \"使用表格列出各省份运维收入数据\", \"哪个城市的售后收入最高\"]\n```"

  }

}

3. 数据洞察

3.1 数据分析

read-normal-img

任务:根据给定的数据分析数据

SQLBot 提交以下内容至大模型(节选)

{

  "messages": [

    {

      "content""### 请使用语言:简体中文 回答,若有深度思考过程,则思考过程也需要使用 简体中文 输出\n\n### 说明:\n你是一个数据分析师,你的任务是根据给定的数据分析数据,并给出你的分析结果。\n",

      "role""system"

    },

    {

      "content""### 字段(字段别名):\n[\"省份\",\"ad_revenue(广告收入)\"]\n\n### 数据:\n[{\"省份\":\"安徽省\",\"ad_revenue\":405549.0},{\"省份\":\"河北省\",\"ad_revenue\":404628.0},{\"省份\":\"广西壮族自治区\",\"ad_revenue\":401600.0},{\"省份\":\"湖南省\",\"ad_revenue\":401309.0},{\"省份\":\"广东省\",\"ad_revenue\":401305.0},{\"省份\":\"海南省\",\"ad_revenue\":396657.0},{\"省份\":\"辽宁省\",\"ad_revenue\":393937.0},{\"省份\":\"湖北省\",\"ad_revenue\":391972.0},{\"省份\":\"甘肃省\",\"ad_revenue\":390658.0},{\"省份\":\"山东省\",\"ad_revenue\":390619.0},{\"省份\":\"四川省\",\"ad_revenue\":390225.0},{\"省份\":\"云南省\",\"ad_revenue\":390162.0},{\"省份\":\"河南省\",\"ad_revenue\":389712.0},{\"省份\":\"江苏省\",\"ad_revenue\":389039.0},{\"省份\":\"江西省\",\"ad_revenue\":367644.0},{\"省份\":\"山西省\",\"ad_revenue\":362398.0},{\"省份\":\"浙江省\",\"ad_revenue\":354740.0},{\"省份\":\"陕西省\",\"ad_revenue\":348865.0},{\"省份\":\"内蒙古自治区\",\"ad_revenue\":334202.0},{\"省份\":\"吉林省\",\"ad_revenue\":313633.0},{\"省份\":\"贵州省\",\"ad_revenue\":299013.0},{\"省份\":\"福建省\",\"ad_revenue\":288775.0},{\"省份\":\"上海市\",\"ad_revenue\":35980.0},{\"省份\":\"新疆维吾尔自治区\",\"ad_revenue\":34016.0},{\"省份\":\"西藏自治区\",\"ad_revenue\":33717.0},{\"省份\":\"天津市\",\"ad_revenue\":33661.0},{\"省份\":\"青海省\",\"ad_revenue\":33283.0},{\"省份\":\"重庆市\",\"ad_revenue\":33203.0},{\"省份\":\"宁夏回族自治区\",\"ad_revenue\":32256.0},{\"省份\":\"黑龙江省\",\"ad_revenue\":32123.0},{\"省份\":\"北京市\",\"ad_revenue\":28990.0}]\n",

      "role""user"

    }

  ],

  "model""deepseek-chat",

  "stream"true,

  "stream_options": {

    "include_usage"true

  }

}

模型返回(节选)

"delta": {

  "role""assistant",

  "content""### 数据分析结果:\n\n#### 1. 数据概览\n- 数据包含31个省级行政区的广告收入数据\n- 广告收入范围:从28,990元(北京市)到405,549元(安徽省)\n- 平均广告收入:约283,738元\n- 中位数广告收入:约390,162元(云南省)\n\n#### 2. 收入分布特征\n(1)头部省份(>390,000元):\n- 安徽省(405,549元)位列第一\n- 前12名省份收入均在390,000-406,000元之间\n- 这些省份主要分布在中东部地区\n\n(2)中部省份(300,000-390,000元):\n- 包括江西省到内蒙古自治区等9个省份\n- 收入梯度明显,从367,644元逐步下降到334,202元\n\n(3)尾部省份(<100,000元):\n- 包含直辖市和部分西部省份\n- 上海市(35,980元)是经济发达地区中的特例\n- 北京市(28,990元)广告收入最低,可能与数据统计口径有关\n\n#### 3. 异常点分析\n- 经济发达地区(北京、上海)收入异常偏低,可能原因:\n  - 数据可能仅反映部分渠道收入\n  - 统计时间窗口特殊(如疫情期间)\n  - 行政区划统计方式不同(如直辖市vs省份)\n- 安徽省作为收入冠军,建议核实数据准确性\n\n#### 4. 区域对比\n- 华东地区:安徽(第1)与浙江(第17)、福建(第22)差异显著\n- 华南地区:广东(第5)与海南(第6)表现较好\n- 西部地区:普遍偏低,但广西(第3)表现突出\n\n#### 5. 建议\n1. 核实北京、上海等地的数据收集完整性\n2. 分析安徽省高收入的驱动因素(如特定行业/平台集中)\n3. 对收入梯度明显的省份进行分层运营策略\n4. 关注广西、甘肃等表现超预期的西部地区\n\n附:TOP5省份\n1. 安徽省 405,549元\n2. 河北省 404,628元 \n3. 广西壮族自治区 401,600元\n4. 湖南省 401,309元\n5. 广东省 401,305元\n\n(注:所有金额单位应为\"元\",原始数据疑似缺少\"万\"等单位,建议确认数据计量单位)"

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/96952.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/96952.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/96952.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实现统一门户登录跳转免登录

统一门户所有应用页面&#xff0c;点击跳转对应业务系统&#xff0c;实现业务系统免登录//获取所有业务系统项&#xff08;获取并存储到仓库) //用于页面展示 let appSubjectVoList ref<any>([]) appSubjectVoList.value userStore.getAppSubjectVoList || [] //登陆后…

卓伊凡的开源战略与PHP-SG16加密技术深度解析-sg加密技术详解-卓伊凡

卓伊凡的开源战略与PHP-SG16加密技术深度解析-sg加密技术详解-卓伊凡引言&#xff1a;在理想与现实间寻求平衡的开源之路近日&#xff0c;技术创业者卓伊凡先生宣布了一项重大决策&#xff1a;将于明日将其公司旗下的优雅草商城、项目管理系统等众多成熟商业产品正式开源。这一…

回溯 算法常见面试问题

1. 全排列(无重复元素) 核心思想:交换法避免额外空间 def permute(nums):def backtrack(first=0):if first == len(nums):res.append(nums.copy())returnfor i in range(first, len(nums)):nums[first], nums[i] = nums[i], nums[first]backtrack(first + 1)nums[first], …

营销专业人员核心能力构建与发展路径

CDA数据分析师证书含金量高&#xff0c;适应了未来数字化经济和AI发展趋势&#xff0c;难度不高&#xff0c;行业认可度高&#xff0c;对于找工作很有帮助。一、营销人员五维能力模型能力维度核心技能要素工具与方法论产出成果数据驱动决策指标监控、归因分析、效果优化Google …

Android系统学习2——Android.Utils.Log模块讨论

Android系统学习2——Android.Utils.Log模块讨论 ​ 打日志是一个很好的习惯&#xff0c;有的时候我们可以通过这里排查我们的程序的问题。在这里&#xff0c;我们可以从Android的日志机制入手讨论我们的Log模块。 android.util.Log 类的作用 Android 中最常用的日志工具是 and…

使用 YAML 文件,如何优雅地删除 k8s 资源?

在 Kubernetes 中&#xff0c;删除资源是日常运维中不可避免的操作。如果你习惯了使用 kubectl create 和 kubectl apply 来创建和更新资源&#xff0c;那么你可能也会想知道如何用同样基于文件的方式来删除它们。 虽然你总是可以用 kubectl delete deployment <name> 这…

如何将游戏和软件移动到另一个驱动器或外部磁盘中

您的C盘存储空间是否不足&#xff0c;或者您不小心在错误的驱动器中安装了游戏或应用程序。那么使用这个简单的技巧&#xff0c;您可以轻松的将游戏或应用程序移动到另一个分区或磁盘中。1、找到准备移动的软件&#xff0c;选择路径并复制&#xff1a;2、打开记事本&#xff0c…

赋能汽车电子智造:全星QMS打造品质检验、稽核与客诉管理闭环​——全星质量管理软件系统

全星QMS&#xff1a;驱动汽车电子质量卓越与商业成功的核心引擎 在智能汽车时代&#xff0c;汽车电子的质量已成为产品安全、性能与品牌信誉的核心。面对复杂的供应链、严苛的IATF 16949/ISO 26262标准及降本增效的压力&#xff0c;您的企业需要一位数字化战略伙伴。全星质量管…

【数据结构C语言】顺序表

1. 线性表 线性表&#xff08;linear list&#xff09;是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构&#xff0c;常见的线性表&#xff1a;顺序表、链表、栈、队列、字符串...线性表在逻辑上是线性结构&#xff0c;也就说是连续的一条直线…

AI 学习路径-记录分享

目录推荐学习资源延申阅读推荐学习资源 3Blue1Brown的个人空间-3Blue1Brown个人主页-哔哩哔哩视频 这个简短的课程有助于了解AI的本质&#xff0c;迈入学习AI的第一步。 欢迎加入 &#x1f917; AI Agents 课程 - Hugging Face Agents Course AI Agent&#xff0c;当前火爆…

Windows Server 2019 上安装 Ubuntu 20.04 的几种方式

docker desktop不支持Windows server 2019&#xff0c;所以Windows Server 2019 上安装 Ubuntu 20.04 变成一种可行的途径。记录一下其中可用的几种方式&#xff1a;&#x1f5c2; 常见安装方式对比方式原理难度适用场景优点缺点Hyper‑V 虚拟机&#xff08;推荐&#xff09;利…

当Trae遇上高德MCP:一次国庆武汉之旅的AI技术实践

当Trae遇上高德MCP&#xff1a;一次国庆武汉之旅的AI技术实践 &#x1f31f; Hello&#xff0c;我是摘星&#xff01; &#x1f308; 在彩虹般绚烂的技术栈中&#xff0c;我是那个永不停歇的色彩收集者。 &#x1f98b; 每一个优化都是我培育的花朵&#xff0c;每一个特性都是我…

设计模式:抽象工厂模式

简介 抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,它提供了一种封装一组具有共同主题或相关依赖关系的独立工厂的方式,而无需指定它们的具体类。核心思想是创建一系列相关或相互依赖的对象家族(产品族),可以将客户端与具体产品的创建过程解耦,使得客…

知行——同为科技24周年庆典

在宜人的金秋时节&#xff0c;北京同为科技有限公司于2025年8月23日&#xff0c;天津基地与江西同时隆重举办了以“知行”为主题的周年庆祝活动&#xff0c;回顾企业24年来的奋斗历程&#xff0c;凝聚“同为人”力量&#xff0c;展望更加光明的未来。当天&#xff0c;创始人周慧…

RK android14 定制ES8388音频编解码器双MIC双OUT(1)

文章目录 前言 一、适配内容概述 二、适配步骤 1. HAL层配置修改 1.1 添加声卡名称识别 (`audio_hw.c`) 1.2 注册声卡路由配置 (`config_list.h`) 1.3 定义路由配置表 (`es8388_config.h`) 2. 内核设备树修改 2.1 禁用默认声卡 2.2 配置ES8388声卡节点 2.3 配置I2C和Codec节点 …

Oracle跟踪及分析方法

1、SQL_TRACE 通过设置 SQL_TRACE 可以启用或禁用 SQL 跟踪工具&#xff0c;设置 SQL_TRACE 为 true 可以收集信息用于性能优化或问题诊断&#xff1b; 特别注意&#xff1a; 全局启用 SQL 跟踪可能会对性能产生严重影响。 可以使用 ALTER SESSION 跟踪特定会话。 Oracle 已…

第三阶段数据库-9:循环,编号,游标,分页

1_sql中的循环&#xff0c;编号&#xff08;1&#xff09;sql 中没有for循环&#xff0c;只有while循环&#xff0c;begin end 中间的就是while执行的语句&#xff0c;相当于{}declare i int; set i1; --begin end 中间的就是while执行的语句&#xff0c;相当于{} while(i<…

Redis高级篇:在Nginx、Redis、Tomcat(JVM)各环节添加缓存以实现多级缓存

摘要&#xff1a;多级缓存通过在 Nginx、Redis、Tomcat&#xff08;JVM&#xff09;各环节添加缓存&#xff0c;解决传统缓存中 Tomcat 瓶颈与 Redis 失效冲击数据库问题。利用 Caffeine 实现 JVM 缓存&#xff0c;OpenResty 结合 Lua 处理 Nginx 层逻辑&#xff0c;通过 Redis…

9 设计网络爬虫

前言 我们重点讨论网络爬虫的设计&#xff0c; 这也是一个有趣且经典的系统设计面试问题。 爬虫开发的复杂性取决于我们想要支持的爬虫规模。它可以是一个小的学校项目&#xff0c;只需要几小时就可以完成&#xff0c;也可以是一个需要专业开发团队持续优化的巨型项目。因此&…

面试:计算机网络

一、网络分层与URL流程 1. 模型掌握TCP/IP四层模型&#xff1a;层级功能 & 协议应用层提供应用接口&#xff08;HTTP、DNS、FTP&#xff09;传输层端到端传输&#xff08;TCP可靠、UDP快速&#xff09;网络层路由与寻址&#xff08;IP、ICMP&#xff09;网络接口层链路传输…