AIGC、LLM 加持下的地图特征笔记内容生产系统架构设计

文章目录

    • 背景
    • 构建自动化内容生产平台
      • 系统架构设计
      • 架构详细设计
      • 流程介绍
        • 笔记来源
          • 笔记抓取干预
        • 笔记 AIGC 赋能
        • 笔记 Rule 改写
        • 笔记特征库构建
    • 附录
      • Bash Cron 定时任务
      • Golang 与 Pyhon AIGC 实践
    • 小结

背景

在大模型的浪潮下,ChatGPT、Sora、Gemini、文言一心 等新技术不断涌现。如何将新技术融合至业务落地,开辟新赛道、提升产品竞争力 是大家比较关心的。因为一旦新融合场景契合可行,对人们生产、生活将是里程碑的创新、跃进。

在这里插入图片描述

本文将介绍基于 LLM[大模型]、利用 AIGC 为笔记生产赋能。

主要场景为地图。可简要概括为,利用人工智能手段生成地图类特征笔记,以便于在地图类场景分发【商业路径这里不做赘述】。

注:地图场景可替换为其他场景,前提是具备其垂类场景的模型。

构建自动化内容生产平台

要实现在地图垂类场景下笔记的分发,需要稳定的、高质的内容不断生成。形成规模化后,用户习惯、心智才会逐渐培养、形成。

就持续性、规模化 而言,自动化是达成目标的之一路径。

首要任务是搭建一个可自动化生产内容的系统。同时,构建内容管理平台,是为了支持:数据量化、手动干预(紧急上/下线)、内容提质 等衍生能力。

系统架构设计

在这里插入图片描述

架构详细设计

在这里插入图片描述

流程介绍

笔记来源

在实际场景中,笔记来源并不能像 “测试” 或者 “Demo” 一样,随便给几个 Prompt ,利用模型生成一篇。这样的笔记也不会被用户人群关注,没有实用、情感、或者其他价值。

就有价值的笔记源来说,实时咨询、财经、文娱、旅游…等垂类信息是较好的来源。

在这里插入图片描述

我们可以通过爬虫,对新闻类、财经类、旅游类…等网站进行内容抓取,作为笔记数据源。

笔记抓取干预

有了稳定的数据源之后,需要对内容进行清洗、过滤,通过 “漏洞策略” ,提出契合 “地图特征“ 的笔记。

这里的策略可以是简单的黑白名单,主要是进行 ”粗筛“ ,精细化的清洗将会交给 LLM 处理。

笔记 AIGC 赋能

经过笔记抓取、粗略干预后的笔记,基本可以保证是覆盖 ”地图特征“ 的,但其中含有杂质,且缺少精细化的挂接。

  • 比如,错误的位置信息、文章和主题的匹配度、水文、软广 等杂质。
  • 再比如,相关位置信息没有对应的 loc 位置坐标,无法构建特征数据等。

在这里插入图片描述

这就需要通过 LLM 基于 位置信息进行训练,进而利用 模型组成系列模组,对内容重新进行赋能。

考虑到笔记文章的质量、后续的特征建库、及分发,这里主要进行下列模型处理:

  1. Extract-model:Extrac city\loc\desc by title and content
  2. Hitch-model:Hitch pois list info by extrac res and title\content
  3. Filter-model:Calculate the degree of match between the POI information and the extracted information, and mark those with a
    match degree lower than 0.7.
  4. Embedding-model:Embedding Extract the vector features of the image and title.

在这里插入图片描述

经过这些模型处理后,剩下的笔记基本上就符合后续的分发,且质量完全可以得到保证。

笔记 Rule 改写

AIGC 赋能后,在实际生产中发现,人工智能并不能解决全部问题。

像文本换行、特殊字符处理、文本提示/引导词/敏感词过滤,还是需要辅助以规则,进行外层兜底策略处理,对笔记进行改写。

笔记特征库构建

TODO

附录

Bash Cron 定时任务

* 具体脚本代码可私信。
* * * * * cd /home/map/work/cron && sh import.sh >/dev/null 2>&1
*/10 * * * * cd /home/map/work/cron && sh consumer.sh >/dev/null 2>&1

Golang 与 Pyhon AIGC 实践

    output, err := exec.Command("python3", rootDir+"/scripts/handler.py", url, fileName, env.RootDir()+"/imgfile/").CombinedOutput()
#!usr/bin/env python
# -*- coding:utf-8 _*-
import re
import sys
import json
# 检查文件是否存在,如果不存在则创建
if not os.path.exists(LOCKFILE):
    with open(LOCKFILE, 'w') as f:
        f.write('0')  # 写入初始并发计数
# 最大并发数
MAX_CONCURRENT = 4
......

小结

在实际生产中,已经证明 “ 通过 大模型 和 AIGC 加持, 与垂类业务相结合 ” 的道路是完全行的通的。并且生产力、产品质量 都有惊人的提升,具备很高的发展潜能及空间。

由于篇幅有限,具体特征库构建及内容分发在后续博文介绍。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python使用Rembg库去除图片背景

一、引入Rembg库 #库地址 https://github.com/danielgatis/rembg#CPU使用 pip install rembg # for library pip install rembg[cli] # for library cli#GPU使用(系统支持onnxruntime-gpu) pip install rembg[gpu] # for library pip install rembg[gp…

《QT实用小工具·六十三》QT实现微动背景,界面看似静态实则动态

1、概述 源码放在文章末尾 该项目实现了微动背景,界面看似静态实则动态,风动,幡动,仁者心动,所以到底是什么在动?哈哈~ 界面会偷偷一点一点改动文字颜色的颜色填充。 虽然是动态,但是慢到难以…

【动态规划】子序列问题I|最长递增子序列|摆动序列|最长递增子序列的个数|最长数对链

一、最长递增子序列 300. 最长递增子序列 算法原理: 💡细节: 1.注意子序列和子数组的区别: (1)子序列:要求顺序是固定的(要求没那么高,所以子序列就多一些) (2)子数组:要…

LLama3大模型本地部署 仅需6步完成对话模型本地安装部署。附赠ui配置、第三方微调模型、中文模型下载地址

本篇分为三部分 一:6步完成llama3大模型本地部署 二:8步完成llama3可视化对话界面安装 三:微调模型、中文模型下载资源分享 一、LLama3 大模型本地部署安装 首先去mata官网下载ollama客户端 Ollama 选择合适的操作系统平台后点击dowload按钮…

【算法】动态规划之背包DP与树形DP

前言: 本系列是学习了董晓老师所讲的知识点做的笔记 董晓算法的个人空间-董晓算法个人主页-哔哩哔哩视频 (bilibili.com) 动态规划系列 【算法】动态规划之线性DP问题-CSDN博客 【算法】动态规划之背包DP问题(2024.5.11)-CSDN博客 背包…

【数据结构】浅谈

✨✨✨专栏:数据结构 🧑‍🎓个人主页:SWsunlight 目录 一、概念: 二、物理结构: 1、顺序存储结构: 2、链式存储结构: 3、数据索引存储结构: 4、数据散列存储结构&#xf…

清理缓存简单功能实现

在程序开发中,经常会用到缓存,最常用的后端缓存技术有Redis、MongoDB、Memcache等。 而有时候我们希望能够手动清理缓存,点一下按钮就把当前Redis的缓存和前端缓存都清空。 功能非常简单,创建一个控制器类CacheController&#xf…

连升三级!openGauss单机版从2.1.0经停3.0.0升级至5.0.0

前言 如前文所述,我们的小demo项目起初安装了openGauss的2.1.0版本,由于2.1.0不是长期维护(LTS)版本,所以要升级到5.0.0LTS。考虑到虽然是DEMO项目,但也有些体验用户,所以为了保障业务连续性&a…

虚幻五关卡制作学习笔记

1.创建一个移动平台 这个移动平台的功能:从箭头1移动到箭头2来回移动,可移动时发绿光,不可移动时发红光 首先,创建两个材质,发红光和绿光 然后我们创建一个actor蓝图类,添加两个arrow组件,两个…

一文弄懂 Linux 系统调用函数之 exec 函数族

目录 简介函数原型参数说明返回值函数区别使用示例采用参数列表传递参数,以 execl 为例采用参数数组传递参数,以 execv 为例调用 PATH 下可执行文件,以 execlp 为例使用新的环境变量给新进程,以 execle 为例 更多内容 简介 exec …

22、Flink 背压下的 Checkpoint处理

1.概述 通常,对齐 Checkpoint 的时长主要受 Checkpointing 过程中的同步和异步两个部分的影响;但当 Flink 作业正运行在严重的背压下时,Checkpoint 端到端延迟的主要影响因子将会是传递 Checkpoint Barrier 到 所有的算子/子任务的时间&…

计算机毕业设计】springbootBBS论坛系统

本系统为用户而设计制作 BBS论坛系统,旨在实现BBS论坛智能化、现代化管理。本BBS论坛自动化系统的开发和研制的最终目的是将BBS论坛的运作模式从手工记录数据转变为网络信息查询管理,从而为现代管理人员的使用提供更多的便利和条件。使BBS论坛系统数字化…

什么是JVM中的程序计数器

在计算机的体系结构中: 程序计数器(Program Counter),通常缩写为 PC,是计算机体系结构中的一个寄存器,用于存储下一条指令的地址。程序计数器是控制单元的一部分,它的作用是确保程序能够按正确…

用python写个控制MicroSIP自动拨号和定时呼叫功能(可用在小型酒店叫醒服务)MicroSIP定时拨号

首先直接上结果吧,MicroSIP 助手,控制MicroSIP自动拨号,定时呼叫的非常实用小工具! 在使用MicroSIP 助手之前,我们需要了解MicroSIP是什么,MicroSIP是一个SIP拨号软件,支持注册任意SIP平台实现拨…

【Java难点】多线程-高级

悲观锁和乐观锁 悲观锁 synchronized关键字和Lock的实现类都是悲观锁。 它很悲观,认为自己在使用数据的时候一定有别的线程来修改数据,因此在获取数据的时候会一不做二不休的先加锁,确保数据不会被别的线程修改。 适合写操作多的场景&…

1057: 有向图的出度计算

解法&#xff1a; #include<iostream> using namespace std; int arr[100][100]; int main() {int vertex, edge;cin >> vertex >> edge;int i, j;while (edge--) {cin >> i >> j;arr[i][j] 1;}for (int i 0; i < vertex; i) {int sum 0;…

乡村振兴与乡村环境综合整治:加强农村环境保护,开展农村环境综合整治行动,提升乡村环境质量,打造生态宜居的美丽乡村

目录 一、引言 二、乡村振兴背景下的乡村环境现状 1、乡村环境面临的挑战 2、乡村环境问题的成因 三、加强农村环境保护的重要性 1、促进乡村振兴 2、保障生态安全 3、提升居民生活质量 四、开展农村环境综合整治行动的策略 1、制定科学规划 2、加大投入力度 3、强…

在iPad中进行截图的两种方法,总有一种适合你

在iPad上截屏就像在iPhone设备上同时按下两个按钮一样简单,或者你可以使用另一种屏幕方法。以下是操作方法。 什么是屏幕截图 屏幕截图是对设备屏幕上内容的直接捕捉。使用屏幕截图,你可以捕捉你所看到的内容,然后将其保存以备日后使用或与他人共享,而无需使用相机拍摄设…

ICode国际青少年编程竞赛- Python-4级训练场-复杂嵌套for循环

ICode国际青少年编程竞赛- Python-4级训练场-复杂嵌套for循环 1、 for i in range(4):Dev.step(i6)for j in range(3):Dev.turnLeft()Dev.step(2)2、 for i in range(4):Dev.step(i3)for j in range(4):Dev.step(2)Dev.turnRight()Dev.step(-i-3)Dev.turnRight()3、 for i …

AI换脸原理(7)——人脸分割参考文献TernausNet: 源码解析

1、介绍 这篇论文相对来说比较简单,整体是通过使用预训练的权重来提高U-Net的性能,实现对UNet的改进。该方法也是DeepFaceLab官方使用的人脸分割方法。在介绍篇我们已经讲过了UNet的网络结构和设计,在进一步深入了解TernausNet之前,我们先简单回顾下UNet。 U-Net的主要结构…