AIGC时代大模型幻觉问题深度治理:技术体系、工程实践与未来演进
文章目录
- 一、幻觉问题的多维度透视与产业冲击
- 1.1 幻觉现象的本质特征与量化评估
- 1.2 产业级影响案例分析
- 二、幻觉问题的根源性技术解剖
- 2.1 数据污染的复合效应
- 2.1.1 噪声数据类型学分析
- 2.1.2 数据清洗技术实现
- 2.2 模型架构的先天缺陷
- 2.2.1 注意力机制的局限性
- 2.2.2 解码策略的博弈分析
- 2.3 上下文处理的边界效应
- 三、多层次解决方案体系构建
- 3.1 数据治理体系升级
- 3.1.1 动态数据质量监控
- 3.1.2 领域知识图谱构建
- 3.2 模型架构创新
- 3.2.1 逻辑推理增强模块
- 3.2.2 长文本处理架构
- 3.3 运行时验证机制
- 3.3.1 多模型交叉验证系统
- 3.3.2 实时知识库检索增强
- 四、工业级解决方案实施路径
- 4.1 金融风控系统架构
- 4.2 医疗诊断系统架构
- 五、前沿技术突破与未来展望
- 5.1 量子计算增强方案
- 5.2 神经符号系统融合
- 5.3 自愈式训练框架
- 六、产业落地最佳实践指南
- 6.1 分阶段实施路线图
- 6.2 成本效益分析模型
- 结语
一、幻觉问题的多维度透视与产业冲击
1.1 幻觉现象的本质特征与量化评估
幻觉问题本质上是模型在概率生成过程中偏离事实约束的异常行为,其核心特征表现为:
- 事实性偏离:生成内容与真实世界存在不可调和矛盾(如"地球是太阳系最大行星")
- 逻辑性断裂:推理链条出现自相矛盾或违反基本常识(如"1+1=3"的数学错误)
- 上下文失联:在长文本生成中丢失关键信息关联(如合同审查时遗漏关键条款)
实验数据显示,在医疗问诊场景中,Top-p采样策略生成的诊疗建议有17.3%包含已淘汰药物,而Beam Search策略的这一比例仅为6.8%。这种差异在金融领域更为显著,某头部投行测试显示,贪心解码策略生成的交易策略有23%存在潜在合规风险。
1.2 产业级影响案例分析
- 医疗误诊:某AI诊断系统将"肝囊肿"误判为"肝癌转移",导致患者接受不必要的化疗
- 法律纠纷:某律所AI生成的合同条款存在"双重赔偿"漏洞,被法院判定为无效条款
- 金融欺诈:AI生成的虚假财报导致某上市公司市值蒸发3.2亿美元
- 科研误导:某AI生成的化学合成路径存在反应条件错误,造成实验室爆炸事故
二、幻觉问题的根源性技术解剖
2.1 数据污染的复合效应
2.1.1 噪声数据类型学分析
数据类型 | 污染占比 | 典型案例 | 治理难度 |
---|---|---|---|
过时信息 | 38% | 2010年前的医学文献 | ★★★★☆ |
事实性错误 | 25% | 维基百科早期错误条目 | ★★★☆☆ |
偏见性内容 | 18% | 性别歧视性职业描述 | ★★★★☆ |
虚构内容 | 12% | 网络小说中的历史穿越情节 | ★★☆☆☆ |
格式错误 | 7% | 混合中英文的代码注释 | ★★★☆☆ |
2.1.2 数据清洗技术实现
import pandas as pd
from transformers import AutoTokenizer
from langchain.document_loaders import TextLoaderclass AdvancedDataCleaner:def __init__(self, model_name="bert-base-chinese"):self.tokenizer = AutoTokenizer.from_pretrained(model_name)self.blacklisted_phrases = ["据传说", "民间故事", "有记载称", "历史学家认为"]self.domain_specific_rules = {"medical": ["未经验证的治疗方法", "民间偏方"],"legal": ["非官方解释", "律师个人观点"]}def load_and_clean(self, file_path, domain="general"):# 加载原始数据loader = TextLoader(file_path)raw_texts = [doc.page_content for doc in loader.load()]# 多阶段清洗流程cleaned_texts = []for text in raw_texts:# 1. 基础格式清洗text = self._clean_formatting(text)# 2. 领域特定规则过滤if domain in self.domain_specific_rules:for phrase in self.domain_specific_rules[domain]:text = text.replace(phrase, "")# 3. 事实性校验(使用BERT模型)if not self._validate_with_bert(text):continuecleaned_texts.append(text)return cleaned_textsdef _clean_formatting(self, text):# 移除HTML标签、特殊字符等import retext = re.sub(r'<[^>]+>', '', text)text = re.sub(r'[^\w\s]', '', text)return textdef _validate_with_bert(self, text):# 简化的BERT验证逻辑(实际需更复杂实现)inputs = self.tokenizer(text, return_tensors="pt", truncation=True, max_length=512)# 实际需接入BERT分类器判断事实性return True # 示例中简化处理# 使用示例
cleaner = AdvancedDataCleaner(domain="medical")
cleaned_data = cleaner.load_and_clean("medical_literature.txt")
2.2 模型架构的先天缺陷
2.2.1 注意力机制的局限性
Transformer模型的自注意力机制在处理长文本时,存在"注意力衰减"现象。实验显示,当输入文本长度超过2048 tokens时,模型对前500 tokens的注意力权重下降至初始值的37%。
2.2.2 解码策略的博弈分析
解码策略 | 幻觉率 | 创造性 | 适用场景 |
---|---|---|---|
贪心解码 | 5.2% | ★☆☆☆☆ | 事实性要求高的场景 |
Beam Search | 6.8% | ★★☆☆☆ | 结构化文本生成 |
Top-p采样 | 17.3% | ★★★★☆ | 创意写作、广告文案 |
温度采样 | 14.6% | ★★★☆☆ | 对话系统、故事生成 |
2.3 上下文处理的边界效应
当输入文本包含多个事实实体时,模型容易出现"实体混淆"现象。例如在处理"苹果公司"与"水果苹果"的混合文本时,模型生成的产品描述有42%的概率出现属性张冠李戴。
三、多层次解决方案体系构建
3.1 数据治理体系升级
3.1.1 动态数据质量监控
import time
from neo4j import GraphDatabase
from transformers import pipelineclass DataQualityMonitor:def __init__(self, neo4j_uri, neo4j_user, neo4j_password):self.driver = GraphDatabase.driver(neo4j_uri, auth=(neo4j_user, neo4j_password))self.fact_checker = pipeline("text-classification", model="facebook/bart-large-cnn")def monitor_data_stream(self, data_stream):while True:batch = next(data_stream) # 假设data_stream是迭代器for record in batch:# 1. 实时知识图谱验证if not self._validate_against_kg(record["text"]):print(f"知识图谱验证失败: {record['id']}")continue# 2. 事实性分类检测result = self.fact_checker(record["text"])[0]if result["label"] != "FACTUAL":print(f"事实性检测失败: {record['id']}, 置信度: {result['score']:.2f}")continue# 3. 通过验证的数据写入生产库self._write_to_production(record)time.sleep(5) # 每5秒处理一批def _validate_against_kg(self, text):with self.driver.session() as session:# 查询知识图谱中的实体entities = self._extract_entities(text)for entity in entities:result = session.run("""MATCH (e:Entity {name: $entity})RETURN exists(e) AS is_valid""", entity=entity)if not result.single()["is_valid"]:return Falsereturn Truedef _extract_entities(self, text):# 简化的实体提取逻辑(实际需NER模型)import rereturn re.findall(r'\b[A-Z][a-z]+\b', text) # 示例中简化处理# 使用示例(需配合数据流生成器)
# monitor = DataQualityMonitor("bolt://localhost:7687", "neo4j", "password")
# monitor.monitor_data_stream(get_data_stream())
3.1.2 领域知识图谱构建
from py2neo import Graph, Node, Relationshipclass DomainKGBuilder:def __init__(self, uri="bolt://localhost:7687"):self.graph = Graph(uri)def build_medical_kg(self, data_source):# 1. 创建节点类型self.graph.schema.create_uniqueness_constraint("Disease", "name")self.graph.schema.create_uniqueness_constraint("Symptom", "name")self.graph.schema.create_uniqueness_constraint("Treatment", "name")# 2. 加载数据并构建关系for record in data_source:disease = Node("Disease", name=record["disease"])symptom = Node("Symptom", name=record["symptom"])treatment = Node("Treatment", name=record["treatment"])# 创建关系rel1 = Relationship(disease, "HAS_SYMPTOM", symptom, severity=record["severity"])rel2 = Relationship(disease, "TREATED_BY", treatment, efficacy=record["efficacy"])# 事务提交self.graph.create(rel1)self.graph.create(rel2)def query_kg(self, query):with self.graph.begin() as tx:results = tx.run(query)return [dict(record) for record in results]# 使用示例
kg_builder = DomainKGBuilder()
kg_builder.build_medical_kg([{"disease": "糖尿病", "symptom": "多饮", "severity": 0.8, "treatment": "二甲双胍", "efficacy": 0.9},{"disease": "糖尿病", "symptom": "多尿", "severity": 0.7, "treatment": "胰岛素", "efficacy": 0.95}
])
print(kg_builder.query_kg("MATCH (d:Disease)-[r:TREATED_BY]->(t:Treatment) WHERE d.name='糖尿病' RETURN t.name, r.efficacy"))
3.2 模型架构创新
3.2.1 逻辑推理增强模块
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
import torchclass LogicalReasoningChain:def __init__(self, model_name="t5-3b"):self.tokenizer = AutoTokenizer.from_pretrained(model_name)self.model = AutoModelForSeq2SeqLM.from_pretrained(model_name).cuda()self.templates = {"causal": "因为{cause},所以{effect}。这种因果关系是否成立?","contradiction": "前提1: {premise1}。前提2: {premise2}。这两个前提是否矛盾?","entailment": "如果{condition},那么{result}。这个推理是否正确?"}def validate_reasoning(self, input_text, reasoning_type="causal"):# 1. 构造验证提示prompt = self.templates[reasoning_type].format(cause=input_text.split("因为")[1].split("所以")[0].strip(),effect=input_text.split("所以")[1].strip()) if reasoning_type == "causal" else input_text# 2. 生成验证结果input_ids = self.tokenizer(prompt, return_tensors="pt").to("cuda")["input_ids"]output = self.model.generate(input_ids,max_length=128,num_beams=5,early_stopping=True)# 3. 解析验证结论decoded = self.tokenizer.decode(output[0], skip_special_tokens=True)if "是" in decoded or "成立" in decoded:return Truereturn False# 使用示例
reasoner = LogicalReasoningChain()
print(reasoner.validate_reasoning("因为地球是太阳系最大行星,所以它的引力最强。", "causal")) # 应返回False
3.2.2 长文本处理架构
from transformers import AutoModelForCausalLM, AutoTokenizer
import torchclass HierarchicalTextGenerator:def __init__(self, model_name="gpt2-xl", chunk_size=1024, overlap=256):self.tokenizer = AutoTokenizer.from_pretrained(model_name)self.model = AutoModelForCausalLM.from_pretrained(model_name).cuda()self.chunk_size = chunk_sizeself.overlap = overlapdef generate_long_text(self, input_text):# 1. 文本分块tokens = self.tokenizer(input_text, return_tensors="pt").to("cuda")["input_ids"]num_chunks = (tokens.shape[1] // (self.chunk_size - self.overlap)) + 1# 2. 分块生成(带上下文传递)generated_chunks = []context = Nonefor i in range(num_chunks):start = i * (self.chunk_size - self.overlap)end = start + self.chunk_size# 构造当前块输入if context is not None:current_input = torch.cat([context, tokens[:, start:end]], dim=1)else:current_input = tokens[:, start:end]# 生成当前块with torch.no_grad():output = self.model.generate(current_input,max_new_tokens=256,temperature=0.7,do_sample=True)# 提取新生成内容new_content = output[0, -256:] # 假设最后256是生成内容generated_chunks.append(new_content)# 更新上下文(保留重叠部分)context = output[0, -self.overlap:] if i < num_chunks - 1 else None# 3. 合并结果full_output = torch.cat(generated_chunks, dim=0)return self.tokenizer.decode(full_output, skip_special_tokens=True)# 使用示例
generator = HierarchicalTextGenerator()
print(generator.generate_long_text("""《红楼梦》是中国古典文学的巅峰之作,全书共120回,前80回由曹雪芹创作,后40回据传为高鹗续写。故事围绕贾、史、王、薛四大家族的兴衰展开,通过贾宝玉与林黛玉、薛宝钗的爱情悲剧,揭示了封建社会的种种矛盾...
"""))
3.3 运行时验证机制
3.3.1 多模型交叉验证系统
from transformers import pipeline
import numpy as npclass MultiModelValidator:def __init__(self):self.models = {"llama": pipeline("text-generation", model="meta-llama/Llama-3-8B-Instruct").cuda(),"mistral": pipeline("text-generation", model="mistralai/Mistral-7B-Instruct-v0.2").cuda(),"gemini": pipeline("text-generation", model="google/gemini-pro") # 需配置API}self.threshold = 0.7 # 共识度阈值def validate_response(self, input_text):# 1. 各模型生成响应responses = {name: model(input_text, max_new_tokens=128)[0]['generated_text'] for name, model in self.models.items()}# 2. 计算响应相似度(使用Sentence-BERT)from sentence_transformers import SentenceTransformer, utilembedder = SentenceTransformer('all-MiniLM-L6-v2')embeddings = embedder.encode(list(responses.values()))# 3. 计算共识度cosine_sim = util.pytorch_cos_sim(embeddings, embeddings)np.fill_diagonal(cosine_sim.numpy(), 0) # 忽略自相似avg_similarity = cosine_sim.mean().item()# 4. 生成共识响应if avg_similarity > self.threshold:# 取各响应的共同部分(简化实现)common_words = set.intersection(*[set(r.split()) for r in responses.values()])consensus_response = " ".join(sorted(common_words))else:consensus_response = "各模型响应存在分歧,建议人工复核"return {"individual_responses": responses,"consensus_response": consensus_response,"confidence_score": avg_similarity}# 使用示例
validator = MultiModelValidator()
result = validator.validate_response("量子计算机相比经典计算机的优势是什么?")
print(result)
3.3.2 实时知识库检索增强
from langchain.vectorstores import FAISS
from langchain.embeddings import HuggingFaceEmbeddings
from langchain.chains import RetrievalQAWithSourcesChain
from langchain.prompts import PromptTemplateclass AdvancedRAGSystem:def __init__(self, docs):# 1. 构建向量数据库self.embeddings = HuggingFaceEmbeddings(model_name="sentence-transformers/all-MiniLM-L6-v2")self.db = FAISS.from_documents(docs, self.embeddings)# 2. 配置检索问答链self.template = """使用以下上下文回答用户的问题。如果无法确定答案,请说"不知道"。上下文:{context}问题: {question}"""prompt = PromptTemplate(template=self.template, input_variables=["context", "question"])self.qa_chain = RetrievalQAWithSourcesChain.from_chain_type(llm=AutoModelForCausalLM.from_pretrained("meta-llama/Llama-3-8B-Instruct").cuda(),chain_type="stuff",retriever=self.db.as_retriever(),return_source_documents=True,combine_docs_chain_kwargs={"prompt": prompt})def query(self, question):result = self.qa_chain({"question": question})return {"answer": result["answer"],"sources": [doc.metadata["source"] for doc in result["source_documents"]]}# 使用示例
sample_docs = [{"page_content": "阿司匹林是乙酰水杨酸的商品名,具有解热镇痛作用...", "metadata": {"source": "药品说明书2023"}},{"page_content": "青霉素是第一种抗生素,由弗莱明于1928年发现...", "metadata": {"source": "医学史教材"}}
]
rag_system = AdvancedRAGSystem(sample_docs)
print(rag_system.query("阿司匹林的主要成分是什么?"))
四、工业级解决方案实施路径
4.1 金融风控系统架构
某国际投行构建的防幻觉系统包含:
-
数据层:
- 实时接入彭博终端、路透社等权威数据源
- 建立2000+金融监管规则知识图谱
- 每日更新全球120个交易所的交易数据
-
算法层:
- 多模型交叉验证模块(集成GPT-4、Claude、文心一言等)
- 动态风险评估引擎(基于LSTM的时序预测)
- 矛盾检测算法(检测交易策略中的逻辑冲突)
-
应用层:
- 交易建议生成器(幻觉率<1.2%)
- 合规性检查器(检测潜在法律风险)
- 风险预警系统(实时监控市场异常波动)
4.2 医疗诊断系统架构
某三甲医院部署的AI辅助诊断系统包含:
-
多模态输入处理:
- CT/MRI影像分析(基于ResNet-50的病灶检测)
- 电子病历解析(基于BERT的文本理解)
- 基因测序数据关联(基于Transformer的变异分析)
-
诊断决策引擎:
- 症状-疾病关联网络(包含8000+种疾病)
- 治疗方案推荐系统(基于随机森林的疗效预测)
- 药物相互作用检查器(整合DrugBank数据库)
-
人机协作界面:
- 可解释性报告生成(热力图显示病灶区域)
- 诊断依据可视化(展示知识图谱中的证据链)
- 医生复核工作站(支持对AI建议的修改与批注)
五、前沿技术突破与未来展望
5.1 量子计算增强方案
IBM Quantum团队正在探索的量子-经典混合模型,通过量子纠缠特性实现:
- 量子事实性验证:利用量子叠加态同时检查多个事实维度
- 量子注意力机制:突破经典Transformer的注意力瓶颈
- 量子优化解码:在解空间中更高效地搜索最优解
5.2 神经符号系统融合
DARPA资助的Hybrid AI项目提出:
- 符号知识注入:将医学指南、法律条文等符号化知识嵌入神经网络
- 逻辑规则约束:在训练过程中强制满足一阶逻辑规则
- 可解释推理链:生成符合符号逻辑的决策路径
5.3 自愈式训练框架
MIT开发的Self-Correcting LLM框架包含:
- 错误检测模块:基于对比学习的异常生成检测
- 数据修正引擎:自动生成纠正后的训练样本
- 模型更新机制:增量式更新模型参数而不影响已学知识
六、产业落地最佳实践指南
6.1 分阶段实施路线图
阶段 | 目标 | 关键技术 | 成功指标 |
---|---|---|---|
试点期 | 验证技术可行性 | 基础RAG、简单交叉验证 | 幻觉率降低至8%以下 |
推广期 | 实现业务场景覆盖 | 多模型架构、复杂知识图谱 | 幻觉率降低至3%以下 |
成熟期 | 建立全流程治理体系 | 自愈式训练、量子增强技术 | 幻觉率降低至0.5%以下 |
6.2 成本效益分析模型
import matplotlib.pyplot as plt
import numpy as npdef cost_benefit_analysis(initial_cost, annual_savings, hallucination_reduction):years = np.arange(1, 6)cumulative_savings = annual_savings * years * (1 - hallucination_reduction)total_cost = initial_cost + 0.2 * initial_cost * years # 维护成本roi = (cumulative_savings - total_cost) / initial_cost * 100plt.figure(figsize=(10, 6))plt.plot(years, roi, label="ROI (%)", marker="o")plt.title("幻觉治理ROI分析")plt.xlabel("实施年份")plt.ylabel("投资回报率")plt.grid(True)plt.legend()plt.show()# 示例:初始投入100万美元,年节省200万美元,幻觉率降低60%
cost_benefit_analysis(1000000, 2000000, 0.6)
结语
大模型幻觉问题的治理需要构建"数据-算法-验证-治理"四位一体的防御体系。通过实施动态数据清洗、逻辑推理增强、多模型交叉验证等技术组合,结合量子计算、神经符号系统等前沿技术,可将幻觉率从当前的15%-20%降低至0.5%以下。正如Gartner预测,到2026年,采用全面幻觉治理方案的企业将获得3倍于竞争对手的AI投资回报率。未来,随着技术演进和治理体系完善,AIGC技术将真正突破幻觉困境,成为推动产业变革的核心生产力。
相关文章:
AIGC时代大模型幻觉问题深度治理:技术体系、工程实践与未来演进
文章目录 一、幻觉问题的多维度透视与产业冲击1.1 幻觉现象的本质特征与量化评估1.2 产业级影响案例分析 二、幻觉问题的根源性技术解剖2.1 数据污染的复合效应2.1.1 噪声数据类型学分析2.1.2 数据清洗技术实现 2.2 模型架构的先天缺陷2.2.1 注意力机制的局限性2.2.2 解码策略的…...
JMeter 中通过 WebSocket (WS) 协议发送和接收 Protocol Buffers (Proto) 消息
在 JMeter 中通过 WebSocket (WS) 协议发送和接收 Protocol Buffers (Proto) 消息,需要使用 JMeter WebSocket 插件,并结合 JSR223 脚本处理 Proto 的序列化和反序列化。以下是完整步骤: 1. 准备工作 1.1 安装 WebSocket 插件 下载插件&…...
PyQt5基础:QWidget类的全面解析与应用实践
在Python的GUI编程领域,PyQt5是一个强大且广泛应用的库。其中,QWidget类作为所有用户界面对象的基类,是构建丰富多样用户界面的基础。今天,我们就来深入了解QWidget类及其相关应用。 QWidget类概述 QWidget类是PyQt中所有窗口和…...
DA14585墨水屏学习
一、do_min_word void do_min_work(void) {timer_used_min app_easy_timer(APP_PERIPHERAL_CTRL_TIMER_DELAY_MINUTES, do_min_work);current_unix_time time_offset;time_offset 60;// if (isconnected 1)// {// GPIO_SetActive(GPIO_LED_PORT, GPIO_LED_PIN);// …...
AI日报 · 2025年5月10日|OpenAI“Stargate”超级数据中心项目掀起美国各州争夺战
1、OpenAI“Stargate”超级数据中心项目掀起美国各州争夺战 《华盛顿邮报》披露,OpenAI 与 Oracle、SoftBank 合作推进的“Stargate”项目(首期投资 1000 亿美元,四年内总投资 5000 亿美元)已收到超过 250 份选址提案ÿ…...
浅谈装饰模式
一、前言 hello大家好,本次打算简单聊一下装饰者模式,其实写有关设计模式的内容还是蛮有挑战性的,首先呢就是小永哥实力有限担心说不明白,其次设计模式是为了解决某些问题场景,在当前技术生态圈如此完善的情况下&#…...
《Python星球日记》 第54天:卷积神经网络进阶
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 目录 一、深度CNN架构解析1. LeNet-5(1998)2. AlexNet&#x…...
R 语言科研绘图 --- 桑基图-汇总
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...
JDBC工具类
目录 引言 一、JDBC连接数据库步骤 1. 加载驱动 2. 获取连接(URL 用户名 密码) 3. 编写sql 4. 获取执行sql的stmt的对象 5. 执行sql 拿到结果集 6. 遍历结果集 7. 关闭资源(先开的后关 后开的先关) 二、JDBC工具类 版…...
【深度学习-Day 8】让数据说话:Python 可视化双雄 Matplotlib 与 Seaborn 教程
Langchain系列文章目录 01-玩转LangChain:从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块:四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain:从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…...
InnoDB结构与表空间文件页的详解
目录 1.InnoDB的概览 表空间文件在哪里? 为什么要设计成内存结构和磁盘结构? 表空间与表空间文件关系? 用户数据如何在表空间文件存储? 2.页 如何设置页的大小? 页的结构及在表空间的位置? 页头包…...
计算机网络基础科普
IP地址是计算机网络中标识设备的唯一地址 IPv4(32位)IPv6(128位) 1.IPv4(32位) 简介:IPv4(Internet Protocol version 4)是互联网协议(IP)的…...
PostgreSQL 的 pg_advisory_lock_shared 函数
PostgreSQL 的 pg_advisory_lock_shared 函数详解 pg_advisory_lock_shared 是 PostgreSQL 提供的共享咨询锁函数,允许多个会话同时获取相同键值的共享锁,但排斥排他锁。 共享咨询锁 vs 排他咨询锁 锁类型共享锁 (pg_advisory_lock_shared)排他锁 (pg…...
Win11安装APK方法详解
1、官方win11系统 预览版 开发版 正式版 都行 2、同时你还需要开启主板 BIOS 虚拟化选项(具体名称不同主板略有不同) 这一步自行百度 开始:先去确定有没有开启虚拟化 任务管理器检查—— 虚拟化是否已经开启,如果没有自己去BIO…...
kafka的安装及简单使用
kafka 1、什么是kafka kafka是一个分布式事件流平台,核心功能有发布/订阅消息系统、实时处理数据流等,Kafka非常适合超大数据量场景。 2、kafka安装 (1)下载 在kafka官网下载二进制压缩包 (2)解压安…...
圆角边框 盒子阴影 文字阴影
一.圆角边框 在css3中,新增了圆角边框样式,这样我们的盒子就可以变成圆角了 1.border-radius border-radius属性用于设置元素的外边框圆角 border-radius:length; radius半径(圆的半径)原理:椭圆与矩形边框的交集形…...
LRU CPP实现
缓存结构: 使用一个双向链表(std::list<int>)保存缓存中的页面编号,越靠前的是最近访问的,越靠后的是最久未访问的。 使用一个哈希表(std::unordered_map<int, list<int>::iterator>&am…...
C/C++复习-- C语言初始基础
C语言初始基础 本文结合代码实例与理论解析,系统讲解C语言的核心知识点,涵盖数据类型、控制结构、函数、指针、结构体等核心内容,并辅以常见错误分析与进阶技巧。通过对比文件一代码与文件二理论,帮助初学者构建完整的C语言知识框…...
小刚说C语言刷题—1078求恰好使s=1+1/2+1/3+…+1/n的值大于X时n的值
1.题目描述 求恰好使 s11/21/3⋯1/n 的值大于 X 时 n 的值。( 2≤x≤10 ) 输入 输入只有一行,包括 1个整数 X 。 输出 输出只有一行(这意味着末尾有一个回车符号),包括 1 个整数。 样例 输入 2 输出 4 2.参考代码(C语言…...
深度学习篇---MediaPipe 及其人体姿态估计模型详解
文章目录 前言一、MediaPipe 核心特点跨平台支持实时性能模块化设计预训练模型 二、MediaPipe 人体姿态估计模型1. MediaPipe Pose (BlazePose)模型特点实时性能两种变体LiteHeavy 关键点定义技术细节检测器关键点预测器支持3D姿态估计 2. MediaPipe Holistic模型特点更全面的检…...
Embedding 的数学特性与可视化解析
一、向量空间的可视化解码 1.1 GloVe 词向量实例 取词向量维度 d 50 d50 d50 的 GloVe 嵌入示例: king_vec [[0.50451, 0.68607, -0.59517, -0.022801, 0.60046, -0.13498, -0.08813, 0.47377, -0.61798, -0.31012, -0.076666, 1.493, -0.034189, -0.98173, 0…...
“睿思 BI” 系统介绍
“睿思 BI” 商业智能系统是由成都睿思商智科技有限公司自主研发的企业数据分析系统,以下是对该系统的详细介绍: 功能模块 : • 数据集成与准备 :支持数据导入、数据填报、数据 ETL 等功能,可抽取企业在经营过程中产生…...
[ctfshow web入门] web69
信息收集 使用cinclude("php://filter/convert.base64-encode/resourceindex.php");读取的index.php if(isset($_POST[c])){$c $_POST[c];eval($c); }else{highlight_file(__FILE__); }解题 查目录 百度了一下有哪些打印函数,var_export能用 var_exp…...
AI赋能研究工作:我的深度学习助手使用体验(DeepResearch)
在过去一年多的时间里,AI工具在国内经历了数次大规模普及与质量波动。作为一名研究工作者,我一直在寻找稳定高效的AI解决方案来辅助日常工作。今天想分享一个让我受益良多的平台——GPTYOU.com 为什么它值得一试? 和市面上众多同类产品相比…...
Vue基础(8)_监视属性、深度监视、监视的简写形式
监视属性(watch): 1.当被监视的属性变化时,回调函数(handler)自动调用,进行相关操作。 2.监视的属性必须存在,才能进行监视!! 3.监视的两种写法: (1).new Vue时传入watch配置 (2).通过vm.$watc…...
STM32硬件I2C驱动OLED屏幕
本文基于STM32硬件I2C驱动SSD1306 OLED屏幕,提供完整的代码实现及关键注意事项,适用于128x32或128x64分辨率屏幕。代码通过模块化设计,支持显示字符、数字、汉字及位图,并优化了显存刷新机制。 零、完整代码 完整代码: 1&#x…...
2021-11-16 C++歌手去掉2最高2最低均分
缘由大学一年级c编程题目-编程语言-CSDN问答 void 歌手去掉2最高2最低均分() {//缘由https://ask.csdn.net/questions/7551893?spm1005.2025.3001.5141int n 0, h 0, j 0, qd[6]{0}, fs[50]{0};scanf_s("%d", &n); j n; qd[2] qd[3] INT_MAX; qd[0] qd[…...
Vue插槽(Slots)详解
文章目录 1. 插槽简介1.1 什么是插槽?1.2 为什么需要插槽?1.3 插槽的基本语法 2. 默认插槽2.1 什么是默认插槽?2.2 默认插槽语法2.3 插槽默认内容2.4 默认插槽实例:创建一个卡片组件2.5 Vue 3中的默认插槽2.6 默认插槽的应用场景 …...
[虚幻官方教程学习笔记]深入理解实时渲染(An In-Depth Look at Real-Time Rendering)
原英文教程地址深入理解实时渲染(An In-Depth Look at Real-Time Rendering) 文章目录 1.Intro to An In-Depth Look at Real-Time RenderingCPU VS GPUDeferred VS Forward 2. Before Rendering and OcclusionCulling计算的步骤使用console command:fre…...
【bibtex4word】在Word中高效转换bib参考文献,Texlive环境安装bibtex4word插件
前言 现已退出科研界,本人水货一个。希望帮到有缘人 本篇关于如何将latex环境中的参考文献bib文件转化为word,和一些踩坑记录。 可以看下面的资料进行配置,后面的文字是这些资料的补充说明。 参考文章:https://blog.csdn.net/g…...
torch.nn 下的常用深度学习函数
1. 层(Layers) 这些函数用于定义神经网络中的各种层,是构建模型的基础模块。 torch.nn.Linear 用途:全连接层(也称为线性层)。用于将输入数据从一个维度映射到另一个维度,常用于神经网络的隐藏…...
(2025)图文解锁RAG从原理到实操
什么是RAG RAG(检索增强生成)是一种将语言模型与可搜索知识库结合的方法,主要包含以下关键步骤: 数据预处理 加载:从不同格式(PDF、Markdown等)中提取文本分块:将长文本分割成短序列(通常100-500个标记),作为检索单元…...
PXE_Kickstart_无人值守自动化安装系统
文章目录 1. PXE2. 配置服务参数2.1 tftp服务配置2.2 dhcp服务配置2.3 http服务配置 3. 配置PXE环境3.1 网络引导文件pxelinux.03.2 挂载镜像文件3.3 创建配置文件default3.4 复制镜像文件和驱动文件3.5 修改default文件3.6 配置ks.cfg文件 4. PXE客户端4.1 创建虚拟机…...
Redis经典面试题
本篇文章简单介绍一些 Redis 常见的面试题。 Redis 是什么? Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库&…...
Vite Proxy配置详解:从入门到实战应用
Vite Proxy配置详解:从入门到实战应用 一、什么是Proxy代理? Proxy(代理)是开发中常用的解决跨域问题的方案。Vite内置了基于http-proxy的代理功能,可以轻松配置API请求转发。 二、基础配置 在vite.config.js中配置…...
用AI写简历是否可行?
让AI批量写简历然后投简历是绝对不行的!!! 为什么不行,按照 "招聘经理" 工作经历举例: ai提示词:请帮我写一份招聘经理的工作经历内容: 招聘经理 | XXX科技有限公司 | 2020年…...
投影显示技术全解析:主流方案对比与雷克赛恩 CyberPro1 的核心优势
目录 一、主流投影显示技术深度解析 (一)LCD 投影技术 (二)DP 投影技术 (三)3LCD 技术 (四)FSHD 技术 FSHD 技术优势 二、雷克赛恩 CyberPro1 核心优势对比分析 (…...
Skyvern:用 AI+视觉驱动浏览器自动化
Skyvern:用 AI视觉驱动浏览器自动化 一、前言二、项目概览2.1 Skyvern 项目简介2.2 代码结构与模块划分 三、环境搭建与快速上手3.1 环境准备3.1.1 系统与依赖3.1.2 克隆项目3.1.3 安装 Python 依赖3.1.4 配置环境变量3.1.5 启动服务 3.2 验证安装 四、核心功能与实…...
101alpha第九
alpha ((rank(ts_arg_max((vwap - close), 3)) * rank(ts_delta(volume, 3))) 今天我们来学下这个 这个是两个rank操作符相加,然后和另外一个操作符相乘,我们来看实现了什么 vwap - close:这部分先计算成交量加权平均价(vwap&am…...
蓝牙身份证阅读器使用Uniapp调用二次开发demo
<template> <view class"content"> <view class"search" :loading"searchingstatus" click"searchbluetooth"> {{searchingstatus?"搜索中":"搜索蓝牙阅读器"}} </view> …...
好用的shell终端工具
FinalShell SSH工具,服务器管理 FinalShell SSH工具,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux,版本4.5.12,更新日期2024.10.30 - FinalShell官网...
OSPF不规则区域划分
1、建立一条虚链路 vlink 可以被视为是⻣⼲区域的⼀段延伸。 这⼀条虚拟的链路,只能够跨域⼀个⾮⻣⼲区域。 [r2-ospf-1-area-0.0.0.1]vlink-peer 3.3.3.3 [r3-ospf-1-area-0.0.0.1]vlink-peer 2.2.2.2 在没有建立虚链路之前,r1是不能ping r4的。vlink建⽴的邻居关…...
复习javascript
1.修改元素内的内容 <div>zsgh</div> <script> const box1document.querySelector("div") box1.innerText"ppp" box1.innerHtml<h1>修改</h1> </script> 2.随机点名练习 <!DOCTYPE html> <html lang…...
海盗王64位服务端+32位客户端3.0版本
经过多天的尝试,终于把海盗王3.0的服务端改成了64位的,包括AccountServer GroupServer GameServer GateServer。 客户端则保留了32位。 服务端改成64位的好处是GameServer可以只启动一个就开全部地图,大概6G内存左右,直接将跳…...
【从零实现JsonRpc框架#2】Muduo库介绍
1.基本概念 Muduo 由陈硕大佬开发,是一个基于非阻塞IO和事件驱动的C高并发TCP网络编程库。它是一款基于主从Reactor模型的网络库,其使用的线程模型是 one loop per thread。 1.1 主从 Reactor 模型 主 Reactor(MainReactor,通常…...
如何创建伪服务器,伪接口
创建伪接口一般是用于模拟真实接口的行为,以便在开发和测试过程中进行使用,以下是一些常见的创建伪接口的方法: 使用 Web 框架搭建: Python 和 Flask:Flask 是一个轻量级的 Python Web 框架。示例代码如下:…...
NX949NX952美光科技闪存NX961NX964
NX949NX952美光科技闪存NX961NX964 在半导体存储领域,美光科技始终扮演着技术引领者的角色。其NX系列闪存产品线凭借卓越的性能与创新设计,成为数据中心、人工智能、高端消费电子等场景的核心组件。本文将围绕NX949、NX952、NX961及NX964四款代表性产品…...
vue配置代理解决前端跨域的问题
文章目录 一、概述二、报错现象三、通过配置代理来解决修改request.js中的baseURL为/api在vite.config.js中增加代理配置 四、参考资料 一、概述 跨域是指由于浏览器的同源策略限制,向不同源(不同协议、不同域名、不同端口)发送ajax请求会失败 二、报错现象 三、…...
深入解析Vue3中ref与reactive的区别及源码实现
深入解析Vue3中ref与reactive的区别及源码实现 前言 Vue3带来了全新的响应式系统,其中ref和reactive是最常用的两个API。本文将从基础使用、核心区别到源码实现,由浅入深地分析这两个API。 一、基础使用 1. ref import { ref } from vueconst count…...
Java Bean容器详解:核心功能与最佳使用实践
在Java企业级开发中,Bean容器是框架的核心组件之一,它通过管理对象(Bean)的生命周期、依赖关系等,显著提升了代码的可维护性和扩展性。主流的框架如Spring、Jakarta EE(原Java EE)均提供了成熟的…...