基于LLM的多模态临床预测系统:从原理到医疗AI部署实践
在医疗健康领域临床预测任务往往需要整合多种模态的数据——从结构化的电子健康记录EHR和实验室指标到非结构化的医学影像、医生笔记甚至语音记录。传统方法通常为每种模态设计独立的特征提取器和预测模型导致系统复杂、维护困难且难以泛化。近年来大型语言模型LLM在文本理解、推理和生成方面展现出强大能力但其在医疗多模态学习中的潜力尚未被充分探索。本文将从工程实践角度探讨如何将 LLM 作为统一的多模态学习器构建端到端的临床预测流水线涵盖数据预处理、模态对齐、模型微调、推理优化及生产部署的全链路细节。1. 理解 LLM 作为多模态学习器的核心机制大型语言模型本质上是通过自监督学习在海量文本上训练出的通用序列建模器。其核心能力包括理解上下文、捕捉长距离依赖关系、进行逻辑推理和生成连贯文本。当我们将 LLM 应用于多模态临床预测时关键思路是将所有模态的数据统一转化为 LLM 能够理解的“语言”——即 token 序列。1.1 多模态数据的统一表示临床环境中的多模态数据可分为以下几类结构化数据实验室结果、生命体征、药物剂量等表格数据可视为“数值语言”。文本数据临床笔记、诊断报告、研究文献等自然语言文本。图像数据X 光片、CT 扫描、病理切片等医学影像。时间序列数据心电图ECG、脑电图EEG、连续生命体征监测数据。音频数据心音、呼吸音、医患对话录音。要将这些异构数据输入 LLM需要设计统一的编码方案。以实验室指标为例我们可以将每个指标及其数值、单位和时间戳转化为自然语言描述患者于2023-10-15 09:30的白细胞计数为12.5 x10^9/L高于正常范围。这种转换不仅保留了原始信息还赋予了其语义上下文使 LLM 能够像理解普通文本一样理解结构化数据。1.2 模态对齐与融合策略多模态学习的核心挑战是如何让模型理解不同模态数据之间的语义关联。在 LLM 框架下我们通过以下两种策略实现模态对齐前缀编码器方案为每种模态训练专用的编码器将其输出投影到 LLM 的嵌入空间。例如使用 CNN 编码医学影像使用特定网络编码时间序列然后将这些嵌入作为前缀 token 输入 LLM。统一标记化方案将所有模态数据转化为文本描述直接使用 LLM 的原始 tokenizer 进行处理。这种方法无需训练额外的编码器但需要精心设计描述模板以确保信息不丢失。在实际项目中通常采用混合策略对文本类数据直接使用统一标记化对非文本数据使用前缀编码器。2. 构建临床预测系统的技术栈选择构建基于 LLM 的多模态临床预测系统需要综合考虑模型能力、计算资源、医疗合规性和部署环境。以下是推荐的技术栈组合2.1 模型选型考量模型类型适用场景资源需求医疗适配性Llama 2/3 系列需要较强推理能力的复杂预测任务7B-70B参数GPU内存要求高需医疗领域继续预训练Med-PaLM 系列专为医疗优化的模型资源需求大通常通过API使用医疗知识丰富合规性较好BioBERT/ClinicalBERT轻量级文本中心任务参数少可在CPU上推理已在医疗文本上预训练自定义小型LLM资源受限或特定机构需求可定制参数规模数据不出机构隐私保护好对于大多数临床机构从 Llama 2 7B 或 ClinicalBERT 开始是平衡能力与资源的合理选择。2.2 数据处理与特征工程工具临床数据通常涉及敏感的患者信息需要在本地环境中进行处理# 临床数据预处理示例框架 import pandas as pd import numpy as np from datetime import datetime from transformers import AutoTokenizer class ClinicalDataProcessor: def __init__(self, tokenizer_namemicrosoft/BiomedNLP-PubMedBERT-base-uncased-abstract): self.tokenizer AutoTokenizer.from_pretrained(tokenizer_name) def structured_to_text(self, lab_data, vital_signs, medications): 将结构化数据转化为文本描述 text_parts [] # 处理实验室数据 for test_name, value, unit, timestamp in lab_data: normal_range self.get_normal_range(test_name) status 正常 if normal_range[0] value normal_range[1] else 异常 text_parts.append(f{timestamp.strftime(%Y-%m-%d %H:%M)}的{test_name}为{value}{unit}{status}) # 处理生命体征 for sign_name, value, unit, timestamp in vital_signs: text_parts.append(f{timestamp.strftime(%Y-%m-%d %H:%M)}的{sign_name}为{value}{unit}) # 处理药物信息 for med_name, dose, frequency, start_date in medications: text_parts.append(f从{start_date.strftime(%Y-%m-%d)}开始服用{med_name}剂量{dose}频率{frequency}) return 。.join(text_parts) def get_normal_range(self, test_name): 获取检验项目的正常范围 ranges { 白细胞计数: (4.0, 10.0), 血红蛋白: (12.0, 16.0), 血糖: (3.9, 6.1) } return ranges.get(test_name, (0, 100))2.3 多模态编码器集成对于非文本模态需要选择合适的编码器并将其输出与 LLM 对齐import torch import torch.nn as nn from transformers import AutoModel, AutoConfig class MultimodalLLM(nn.Module): def __init__(self, llm_name, image_encoder_nameNone, time_series_encoderNone): super().__init__() # 基础LLM self.llm AutoModel.from_pretrained(llm_name) self.llm_config AutoConfig.from_pretrained(llm_name) # 图像编码器如果使用医学影像 if image_encoder_name: self.image_encoder AutoModel.from_pretrained(image_encoder_name) self.image_projection nn.Linear( self.image_encoder.config.hidden_size, self.llm_config.hidden_size ) # 时间序列编码器 if time_series_encoder: self.ts_encoder time_series_encoder self.ts_projection nn.Linear( time_series_encoder.output_dim, self.llm_config.hidden_size ) def forward(self, text_input, image_inputNone, ts_inputNone): # 处理文本输入 text_embeddings self.llm.embeddings(text_input) # 处理多模态输入 multimodal_embeddings [text_embeddings] if image_input is not None: image_features self.image_encoder(image_input).last_hidden_state.mean(dim1) image_embeddings self.image_projection(image_features) multimodal_embeddings.append(image_embeddings.unsqueeze(1)) if ts_input is not None: ts_features self.ts_encoder(ts_input) ts_embeddings self.ts_projection(ts_features) multimodal_embeddings.append(ts_embeddings.unsqueeze(1)) # 拼接多模态嵌入 combined_embeddings torch.cat(multimodal_embeddings, dim1) return self.llm(inputs_embedscombined_embeddings)3. 临床预测任务的具体实现流程不同临床预测任务需要不同的提示设计和微调策略。以下以住院死亡率预测为例展示完整实现流程。3.1 数据准备与预处理临床数据通常来自医院信息系统需要经过严格的脱敏和标准化处理# 住院死亡率预测数据准备 import pandas as pd from sklearn.model_selection import train_test_split from datasets import Dataset class MortalityPredictionData: def __init__(self, data_path): self.data pd.read_csv(data_path) self.processor ClinicalDataProcessor() def prepare_training_data(self): 准备训练数据 examples [] for _, patient in self.data.iterrows(): # 转化为文本描述 clinical_text self.processor.structured_to_text( patient[lab_results], patient[vital_signs], patient[medications] ) # 构建提示-答案对 prompt f基于以下临床信息预测患者住院期间死亡风险:\n{clinical_text}\n风险等级: answer 高风险 if patient[mortality] 1 else 低风险 examples.append({ prompt: prompt, completion: answer, patient_id: patient[id] }) return Dataset.from_list(examples) def train_test_split(self, test_size0.2): dataset self.prepare_training_data() return dataset.train_test_split(test_sizetest_size)3.2 模型微调与优化使用参数高效微调PEFT技术在有限医疗数据上适配 LLMfrom transformers import TrainingArguments, Trainer from peft import LoraConfig, get_peft_model # LoRA配置用于高效微调 lora_config LoraConfig( r16, lora_alpha32, target_modules[q_proj, v_proj, k_proj, o_proj], lora_dropout0.1, biasnone, task_typeCAUSAL_LM ) # 训练参数配置 training_args TrainingArguments( output_dir./clinical-llm-output, per_device_train_batch_size4, gradient_accumulation_steps4, learning_rate2e-5, num_train_epochs3, logging_dir./logs, logging_steps50, save_steps500, evaluation_strategysteps, eval_steps500, load_best_model_at_endTrue, metric_for_best_modeleval_loss ) def compute_metrics(eval_pred): 自定义评估指标 predictions, labels eval_pred # 实现临床任务特定的评估逻辑 return {accuracy: (predictions labels).mean()} # 创建Trainer trainer Trainer( modelget_peft_model(base_model, lora_config), argstraining_args, train_datasettrain_dataset, eval_dataseteval_dataset, compute_metricscompute_metrics ) # 开始训练 trainer.train()3.3 推理部署与API设计生产环境中的推理服务需要关注性能、可靠性和可解释性from fastapi import FastAPI, HTTPException from pydantic import BaseModel import torch app FastAPI(title临床预测API) class PredictionRequest(BaseModel): patient_data: dict model_type: str mortality return_explanation: bool True class PredictionResponse(BaseModel): prediction: str confidence: float explanation: str None model_version: str app.post(/predict, response_modelPredictionResponse) async def predict_mortality(request: PredictionRequest): try: # 数据预处理 processed_text clinical_processor.structured_to_text( request.patient_data[labs], request.patient_data[vitals], request.patient_data[meds] ) # 模型推理 prompt f临床信息:\n{processed_text}\n死亡风险: inputs tokenizer(prompt, return_tensorspt, truncationTrue, max_length1024) with torch.no_grad(): outputs model.generate( inputs.input_ids, max_new_tokens10, temperature0.1, do_sampleTrue, pad_token_idtokenizer.eos_token_id ) prediction_text tokenizer.decode(outputs[0], skip_special_tokensTrue) risk_level extract_risk_level(prediction_text) # 解析模型输出 return PredictionResponse( predictionrisk_level, confidencecalculate_confidence(outputs), explanationgenerate_explanation(risk_level, processed_text), model_versionclinical-llm-v1.0 ) except Exception as e: raise HTTPException(status_code500, detailf预测失败: {str(e)})4. 临床部署的关键考量与最佳实践将 LLM 应用于实际临床环境需要特别关注准确性、安全性和合规性。4.1 模型验证与性能评估临床模型必须经过严格的验证确保其预测性能达到医疗标准评估指标目标值检查频率改进策略准确率85%每次模型更新增加训练数据调整类别权重AUC-ROC0.90每月一次特征工程模型架构优化敏感度80%每次数据分布变化针对少数类过采样特异度85%模型重新训练时调整决策阈值校准度Brier分数0.1季度评估温度缩放 Platt缩放# 临床模型验证框架 from sklearn.metrics import roc_auc_score, precision_recall_curve, brier_score_loss import numpy as np class ClinicalValidator: def __init__(self, gold_standard_labels): self.gold_standard gold_standard_labels def comprehensive_validation(self, predictions, probabilities): 全面验证临床预测模型 metrics {} # 基础分类指标 metrics[accuracy] np.mean(predictions self.gold_standard) metrics[auc_roc] roc_auc_score(self.gold_standard, probabilities) # 临床特异性指标 sensitivity np.sum((predictions 1) (self.gold_standard 1)) / np.sum(self.gold_standard 1) specificity np.sum((predictions 0) (self.gold_standard 0)) / np.sum(self.gold_standard 0) metrics[sensitivity] sensitivity metrics[specificity] specificity metrics[brier_score] brier_score_loss(self.gold_standard, probabilities) # 计算95%置信区间 for key in metrics: if key ! auc_roc: metrics[f{key}_ci] self.bootstrap_ci(predictions, probabilities, key) return metrics def bootstrap_ci(self, predictions, probabilities, metric, n_bootstraps1000): 自助法计算置信区间 bootstrapped_scores [] for _ in range(n_bootstraps): indices np.random.randint(0, len(predictions), len(predictions)) if metric accuracy: score np.mean(predictions[indices] self.gold_standard[indices]) # 其他指标实现... bootstrapped_scores.append(score) return np.percentile(bootstrapped_scores, [2.5, 97.5])4.2 安全性与偏见 mitigation医疗AI系统必须避免放大现有偏见确保对不同人群的公平性# 偏见检测与缓解 import pandas as pd from fairlearn.metrics import demographic_parity_difference, equalized_odds_difference class BiasAuditor: def __init__(self, sensitive_attributes): self.sensitive_attributes sensitive_attributes def audit_model_fairness(self, predictions, ground_truth, sensitive_data): 审计模型在不同人群上的表现差异 fairness_report {} for attr_name, attr_values in sensitive_data.items(): # 计算不同组的性能指标 group_metrics {} for group in set(attr_values): group_mask attr_values group group_accuracy np.mean(predictions[group_mask] ground_truth[group_mask]) group_metrics[group] group_accuracy # 计算公平性指标 fairness_report[attr_name] { group_metrics: group_metrics, demographic_parity_diff: demographic_parity_difference( ground_truth, predictions, sensitive_featuresattr_values ), equalized_odds_diff: equalized_odds_difference( ground_truth, predictions, sensitive_featuresattr_values ) } return fairness_report def mitigate_bias(self, model, training_data, sensitive_attributes): 使用公平性约束重新训练模型 # 实现基于反事实数据增强或约束优化的去偏方法 pass4.3 生产环境部署清单临床AI系统上线前必须完成以下检查数据流水线检查[ ] 数据脱敏流程是否完整[ ] 实时数据接入延迟是否5秒[ ] 缺失值处理策略是否明确[ ] 数据质量监控是否到位模型服务检查[ ] 推理延迟是否2秒急诊场景1秒[ ] API错误率是否0.1%[ ] 模型版本管理是否健全[ ] 回滚机制是否测试通过合规与安全检查[ ] HIPAA/GDPR合规性验证完成[ ] 模型可解释性报告已生成[ ] 偏见审计报告已通过伦理委员会审查[ ] 用户同意和数据使用协议就位监控与运维检查[ ] 预测漂移检测机制已部署[ ] 性能衰减报警阈值已设置[ ] 日志记录满足审计要求[ ] 灾难恢复方案测试通过5. 典型问题排查与优化策略在实际部署中基于LLM的临床预测系统可能遇到多种问题需要系统化的排查方法。5.1 预测性能问题排查当模型性能不达预期时按以下顺序排查数据质量层面检查标签噪声医学标注常存在主观差异验证数据时效性临床实践变化可能导致历史数据失效分析特征分布确保训练集和测试集分布一致检查数据泄露避免未来信息混入特征中模型层面验证提示工程不同的提示设计对LLM性能影响显著检查过拟合医疗数据量少时容易过拟合评估模态融合多模态信息可能相互干扰而非互补测试不同尺度小模型可能欠拟合大模型可能过拟合# 性能问题诊断工具 class PerformanceDiagnoser: def __init__(self, model, tokenizer, test_dataset): self.model model self.tokenizer tokenizer self.test_data test_dataset def error_analysis(self): 错误分析找出模型预测错误的典型模式 errors [] for example in self.test_data: prediction self.predict_single(example[text]) if prediction ! example[label]: errors.append({ text: example[text], true_label: example[label], predicted: prediction, pattern: self.identify_error_pattern(example, prediction) }) return pd.DataFrame(errors) def identify_error_pattern(self, example, prediction): 识别错误类型 text example[text].lower() # 实现基于关键词和上下文的错误模式识别 if 正常 in text and prediction 高风险: return 过度保守 elif 危急 in text and prediction 低风险: return 风险低估 return 其他5.2 计算效率优化临床环境通常计算资源有限需要针对性优化推理优化技术量化使用8位或4位量化减少内存占用剪枝移除对预测贡献小的模型参数知识蒸馏用小模型学习大模型的行为缓存对常见查询结果进行缓存# 模型量化示例 from transformers import BitsAndBytesConfig import torch # 4位量化配置 quantization_config BitsAndBytesConfig( load_in_4bitTrue, bnb_4bit_use_double_quantTrue, bnb_4bit_quant_typenf4, bnb_4bit_compute_dtypetorch.bfloat16 ) # 加载量化模型 model AutoModelForCausalLM.from_pretrained( clinical-llm-base, quantization_configquantization_config, device_mapauto )5.3 临床工作流集成挑战将预测系统集成到现有临床工作流中面临独特挑战互操作性挑战与医院信息系统HIS、EMR的接口兼容性医疗数据标准HL7 FHIR的转换实时数据流与批量预测的平衡人机协作设计预测结果如何呈现给医生避免自动化偏见不确定性量化的可视化表达反馈机制设计医生纠正如何更新模型# 临床工作流集成接口 class ClinicalWorkflowIntegrator: def __init__(self, his_interface, prediction_service): self.his his_interface self.predictor prediction_service def generate_clinical_alert(self, patient_id): 生成临床预警并集成到工作流 # 从HIS获取患者数据 patient_data self.his.get_patient_data(patient_id) # 获取预测结果 prediction self.predictor.predict(patient_data) # 根据风险等级生成不同级别的预警 if prediction.risk_level 高风险: alert { patient_id: patient_id, alert_type: 死亡风险预警, priority: 高, recommended_actions: [立即评估, 加强监护, 通知主治医师], confidence: prediction.confidence, explanation: prediction.explanation } else: alert None return alert基于LLM的多模态临床预测系统代表了医疗AI的重要发展方向。成功的关键在于平衡技术创新与临床实用性确保系统不仅预测准确还能无缝融入现有医疗流程真正为临床决策提供有价值支持。随着更多医疗数据的积累和模型技术的进步这种统一多模态学习范式有望在疾病诊断、治疗推荐、预后评估等多个场景发挥更大作用。

相关新闻

MCP协议深度实践:构建标准化的AI工具调用层

MCP协议深度实践:构建标准化的AI工具调用层

MCP协议深度实践:构建标准化的AI工具调用层 2026年,由Anthropic发起的Model Context Protocol(MCP)以9700万月下载量和9652个注册服务器的成绩,正式成为AI工具调用层的事实标准。MCP于2025年12月加入Linux基金会Agenti…

2026/10/11 5:56:51 阅读更多 →
关于文献【Steering Vector(强制激活行为)】

关于文献【Steering Vector(强制激活行为)】

1、【我的问题】Steering Vector(强制激活行为)这个是什么意思?【deepseek】【我的总结】Steering Vector(引导向量)是一个工具,帮忙改变模型在想什么。

2026/10/2 4:02:44 阅读更多 →
HarmonyOS 应用开发《掌上英语》第34篇:多媒体播放状态机:AVPlayer 的生命周期管理

HarmonyOS 应用开发《掌上英语》第34篇:多媒体播放状态机:AVPlayer 的生命周期管理

34:多媒体播放状态机:AVPlayer 的生命周期管理一、引言 多媒体播放器本质上是一个有限状态机——它在不同的状态之间流转,每个状态下只能执行特定的操作。HarmonyOS 的 AVPlayer 定义了六种明确的状态,理解这些状态及其转换关系&a…

2026/10/10 16:45:31 阅读更多 →

最新新闻

Z-Gly-Gly-Arg-ΒNA;17278-97-6

Z-Gly-Gly-Arg-ΒNA;17278-97-6

基本性质中文名称:苄氧羰基 - 甘氨酰 - 甘氨酰 - 精氨酸 -β- 萘胺,蛋白酶体胰蛋白酶样活性荧光底物CAS 号:17278-97-6单字母序列:Z-G-G-R-βNA三字母序列:Z-Gly-Gly-Arg-βNA分子式:C₂₈H₃₃N₇O₅分子量…

2026/10/12 3:53:20 阅读更多 →
小白程序员必看: Agent开发12%面试通过率背后,企业真正需要什么?

小白程序员必看: Agent开发12%面试通过率背后,企业真正需要什么?

文章指出,尽管AI Agent工程师存在巨大缺口,但多数投递者因缺乏实际落地经验而被淘汰。企业所需的是能将Agent做上线的人才,而非只会调API的Demo开发者。文章强调,成功的关键在于完整的从需求到上线的经历、Agent架构设计能力以及工…

2026/10/12 3:53:20 阅读更多 →
LangChain检索与文档全攻略:从文档加载到向量检索的RAG落地实践

LangChain检索与文档全攻略:从文档加载到向量检索的RAG落地实践

相信很多人和我一样,刚开始接触LangChain时,第一个跑通的就是“聊天机器人”:丢一句话给大模型,模型给你回一句话。但一旦你想让模型基于你自己的文档来回答,而不是凭它脑子里那点训练数据瞎编,事情就开始变…

2026/10/12 3:53:20 阅读更多 →
Ubuntu下CUDA安装与卸载的底层逻辑与实操指南

Ubuntu下CUDA安装与卸载的底层逻辑与实操指南

1. 为什么Ubuntu下装CUDA不是“点下一步”那么简单 在某高校实验室带学生做图像处理项目时,我见过太多人卡在第一步:装完CUDA, nvidia-smi 能看见显卡, nvcc -V 却报command not found;也见过有人卸载旧版本后&am…

2026/10/12 3:53:20 阅读更多 →
多租户系统从哪里开始设计?租户身份、数据隔离、权限与套餐的整体方案

多租户系统从哪里开始设计?租户身份、数据隔离、权限与套餐的整体方案

多租户系统最容易出现的误判是:给业务表加一个 tenant_id,再给页面加一个“切换公司”入口,就以为完成了多租户。实际运行时,同一账号可能加入多家公司;平台管理员和租户管理员管理的对象不同;某个功能即使…

2026/10/12 3:53:20 阅读更多 →
(161页PPT)制造业变革转型八大领域营销服务研发供应链制造质量财务及人力资源的痛点与改进策略(附下载方式)

(161页PPT)制造业变革转型八大领域营销服务研发供应链制造质量财务及人力资源的痛点与改进策略(附下载方式)

篇幅所限,本文只提供部分资料内容,完整资料请看下面链接 https://download.csdn.net/download/AI_data_cloud/88338620 资料解读:制造业变革转型八大领域营销服务研发供应链制造质量财务及人力资源的痛点与改进策略 详细资料请看本解读文章…

2026/10/12 3:52:20 阅读更多 →

日新闻

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

在数码相机、高清显示屏与现代矢量图形技术高度发达的今天,画面可以做到绝对的锐利、平滑与无瑕。然而,当一张秋日手账插画或拍立得照片过于“平整无瑕”时,往往会散发出一种冰冷生硬的“数码塑料感(Digital Plasticity&#xff0…

2026/10/12 0:00:59 阅读更多 →
活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

在现代网页与移动端设计中,横排(Horizontal Layout)早已经成为了绝对的主流。然而,当我们翻开泛黄的线装古籍、宋版木刻诗集,或是欣赏一张茶道雅集的手写便签时,那种**自上而下纵向书写、自右向左逐列铺展&…

2026/10/12 0:00:59 阅读更多 →
周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

每到周日的晚上八点到十点,很多人心里都会悄悄亮起一盏警示灯。 在心理学上,这种现象有一个专门的称谓——“周日夜晚焦虑症(Sunday Scaries)”。明天又是周一,闹钟又要重新在七点响彻卧房;脑海里仿佛有一个…

2026/10/12 0:00:59 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/12 0:16:30 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/12 0:16:43 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →