大模型教程:使用 Milvus、vLLM 和 Llama 3.1 搭建 RAG 应用

【LLM】vLLM部署与int8量化 介绍了vLLM原理并讲解如何支持peft,对不同的decoding methods进行了说明,同时详述了int8量化的过程。 阅读详情

vLLM 是一个简单易用的 LLM 推理服务库。加州大学伯克利分校于 2024 年 7 月将 vLLM 作为孵化项目正式捐赠给 LF AI & Data Foundation 基金会。欢迎 vLLM 加入 LF AI & Data 大家庭!🎉

在主流的 AI 应用架构中,大语言模型(LLM)通常与向量数据库配套使用,用于构建检索增强生成(RAG)应用,从而解决 AI 幻觉问题。本文将介绍如何使用 Milvus、vLLM 和 Llama 3.1 构建并运行RAG 应用。我们将详细展示如何将文本信息转换为 Embedding 向量并存储到 Milvus 向量数据库中、如何将 Milvus 作为知识库有效检索与用户问题相关的文本块。最后,我们将通过 vLLM 使用 Meta的Llama 3.1-8B 模型生成答案。

01

Milvus、vLLM 和 Llama 3.1 简介

Milvus 向量数据库

Milvus 是一款开源的分布式向量数据库,可用于存储、索引和搜索向量数据,适用于生成式 AI(GenAI)应用。Milvus 支持 hybrid search、元数据过滤、重排(Reranking),能够高效处理万亿规模的向量,助力开发者搭建 AI 和 ML 应用。您可以在本地运行 Milvus standalone 或 cluster 版本,或者使用全托管的 Milvus 服务——Zilliz Cloud。

vLLM

vLLM 是加州大学伯克利分校 SkyLab 推出的一个开源项目,专注于优化 LLM 服务性能。通过高效的内存管理技术,如 PagedAttention、持续批处理和优化 CUDA 内核,vLLm 与传统方法相比将服务性能提高了多达 24 倍,同时将 GPU 内存用量减少了一半。

根据论文《Efficient Memory Management for Large Language Model Serving with PagedAttention》,KV 缓存使用约 30% 的 GPU 内存,可能会导致内存问题。KV 缓存存储在连续内存(contiguous memory)中,但内存变化可能导致内存碎片化,不利于计算效率。

d680b206e72f6685b07999eec68eec9b.png

通过使用虚拟内存缓存 KV,vLLM 只需要在必要时分配物理 GPU 内存,有效避免了内存碎片化和内存预分配。在测试中,vLLM 的吞吐量比 HuggingFace Transformers (HF) 高出多达 24 倍,比基于NVIDIA A10G 和 A100 GPU 的 Text Generation Inference (TGI) 高出 3.5 倍。

e8e77e8390e9fbbee05becd0ee9799cf.jpeg

Meta Llama 3.1

Meta 于 2024 年 7 月 23 日宣布推出 Llama 3.1,允许用于多种商业用途。其 405B 模型(4050 亿参数)在多个公开的性能测试中均展示出了最出色的性能,并支持 128,000 个输入 Token 的上下文窗口。除了 405B 模型外,Meta 还发布了 Llama3.1 70B(700 亿参数)和 8B(80 亿参数)模型。您可以通过 Meta 官网下载模型权重(model weight)。

需要注意微调生成的数据可以提高模型性能,但低质量的数据可能会降低模型性能。Llama 团队已不断识别和去除这些低质量的数据,使用模型本身及其他辅助模型和工具,进一步优化模型。

02

使用 Milvus 搭建 RAG-Retrieval部分

准备数据

本教程将使用 Milvus 文档作为数据集。我们需要先下载并本地保存 Milvus 文档。

from langchain.document_loaders import DirectoryLoader
    # Load HTML files already saved in a local directory
    path = "../../RAG/rtdocs_new/"
    global_pattern = '*.html'
    loader = DirectoryLoader(path=path, glob=global_pattern)
    docs = loader.load()




    # Print num documents and a preview.
    print(f"loaded {len(docs)} documents")
    print(docs[0].page_content)
    pprint.pprint(docs[0].metadata)

3545032b6f53a0850df8888c7549ae12.png

下载 Embedding 模型

接着,从 HuggingFace 上下载一个免费的开源 Embedding 模型。

import torch
    from sentence_transformers import SentenceTransformer




    # Initialize torch settings for device-agnostic code.
    N_GPU = torch.cuda.device_count()
    DEVICE = torch.device('cuda:N_GPU' if torch.cuda.is_available() else 'cpu')




    # Download the model from huggingface model hub.
    model_name = "BAAI/bge-large-en-v1.5"
    encoder = SentenceTransformer(model_name, device=DEVICE)




    # Get the model parameters and save for later.
    EMBEDDING_DIM = encoder.get_sentence_embedding_dimension()
    MAX_SEQ_LENGTH_IN_TOKENS = encoder.get_max_seq_length()




    # Inspect model parameters.
    print(f"model_name: {model_name}")
    print(f"EMBEDDING_DIM: {EMBEDDING_DIM}")
    print(f"MAX_SEQ_LENGTH: {MAX_SEQ_LENGTH}")

d0513a10245cb2df47a3a967fcddea62.png

切分数据并编码为向量

将文档数据切分成固定长度(512 个字符)的文本块,并将切分 overlap 设置为 10%。

from langchain.text_splitter import RecursiveCharacterTextSplitter






    CHUNK_SIZE = 512
    chunk_overlap = np.round(CHUNK_SIZE * 0.10, 0)
    print(f"chunk_size: {CHUNK_SIZE}, chunk_overlap: {chunk_overlap}")




    # Define the splitter.
    child_splitter = RecursiveCharacterTextSplitter(
       chunk_size=CHUNK_SIZE,
       chunk_overlap=chunk_overlap)




    # Chunk the docs.
    chunks = child_splitter.split_documents(docs)
    print(f"{len(docs)} docs split into {len(chunks)} child documents.")




    # Encoder input is doc.page_content as strings.
    list_of_strings = [doc.page_content for doc in chunks if hasattr(doc, 'page_content')]




    # Embedding inference using HuggingFace encoder.
    embeddings = torch.tensor(encoder.encode(list_of_strings))




    # Normalize the embeddings.
    embeddings = np.array(embeddings / np.linalg.norm(embeddings))




    # Milvus expects a list of `numpy.ndarray` of `numpy.float32` numbers.
    converted_values = list(map(np.float32, embeddings))




    # Create dict_list for Milvus insertion.
    dict_list = []
    for chunk, vector in zip(chunks, converted_values):
       # Assemble embedding vector, original text chunk, metadata.
       chunk_dict = {
           'chunk': chunk.page_content,
           'source': chunk.metadata.get('source', ""),
           'vector': vector,
       }
       dict_list.append(chunk_dict)

235b31787284e54aac9392de962b3b1e.png

将向量数据存储在 Milvus 中

将向量存储到 Milvus 向量数据库中。

# Connect a client to the Milvus Lite server.
    from pymilvus import MilvusClient
    mc = MilvusClient("milvus_demo.db")






    # Create a collection with flexible schema and AUTOINDEX.
    COLLECTION_NAME = "MilvusDocs"
    mc.create_collection(COLLECTION_NAME,
           EMBEDDING_DIM,
           consistency_level="Eventually",
           auto_id=True, 
           overwrite=True)




    # Insert data into the Milvus collection.
    print("Start inserting entities")
    start_time = time.time()
    mc.insert(
       COLLECTION_NAME,
       data=dict_list,
       progress_bar=True)




    end_time = time.time()
    print(f"Milvus insert time for {len(dict_list)} vectors: ", end="")
    print(f"{round(end_time - start_time, 2)} seconds")

5f42e2174c532e9c36b5f09c9df7946f.png

进行向量搜索

输入问题,并在 Milvus 知识库中搜索与问题最相似的文本块。

SAMPLE_QUESTION = "What do the parameters for HNSW mean?"






    # Embed the question using the same encoder.
    query_embeddings = torch.tensor(encoder.encode(SAMPLE_QUESTION))
    # Normalize embeddings to unit length.
    query_embeddings = F.normalize(query_embeddings, p=2, dim=1)
    # Convert the embeddings to list of list of np.float32.
    query_embeddings = list(map(np.float32, query_embeddings))




    # Define metadata fields you can filter on.
    OUTPUT_FIELDS = list(dict_list[0].keys())
    OUTPUT_FIELDS.remove('vector')




    # Define how many top-k results you want to retrieve.
    TOP_K = 2




    # Run semantic vector search using your query and the vector database.
    results = mc.search(
        COLLECTION_NAME,
        data=query_embeddings,
        output_fields=OUTPUT_FIELDS,
        limit=TOP_K,
        consistency_level="Eventually")

搜索结果如下所示:

b5815f45bcb446e84e704b253b0799be.png

03

使用 vLLM 和 Llama 3.1-8B 搭建 RAG-Generation 部分

安装 vLLM 与 HuggingFace 模型

vLLM 默认从 HuggingFace 下载大语言模型。通常情况下,如果您想使用 HuggingFace 上的新模型,需要执行 pip install --update 或 -U。此外,我们还需要 GPU 通过 vLLM 来运行 Meta 的 Llama 3.1 推理模型。

# (Recommended) Create a new conda environment.
    conda create -n myenv python=3.11 -y
    conda activate myenv




    # Install vLLM with CUDA 12.1.
    pip install -U vllm transformers torch
import vllm, torch
    from vllm import LLM, SamplingParams
    # Clear the GPU memory cache.
    torch.cuda.empty_cache()
    # Check the GPU.
    !nvidia-smi

获取 HuggingFace token

HuggingFace 上的部分模型(如 Meta Llama 3.1)要求用户在下载前接受其许可证。因此,您必须先创建一个 HuggingFace 帐户,接受模型的许可证,并生成一个 Token。

在 HuggingFace 的 Llama3.1 页上,您会收到一条消息要求您同意条款。单击"Accept License"以接受 Meta 条款,然后再下载模型权重。审批流程通常可以在一天内完成。

审批通过后,需要生成一个新的 HuggingFace token。旧 Token 无法使用。

在安装 vLLM 之前,请使用您的新 Token 登录 HuggingFace。以下示例代码中使用 Colab Secrets 来存储 Token。

# Login to HuggingFace using your new token.
    from huggingface_hub import login
    from google.colab import userdata
    hf_token = userdata.get('HF_TOKEN')
    login(token = hf_token, add_to_git_credential=True)

运行 RAG-Generation 部分

我们需要 GPU 和较大的内存来运行 Llama-3.1-8B 模型。以下示例是在 Google Colab Pro上使用 A100 GPU 运行的。

# 1. Choose a model
    MODELTORUN = "meta-llama/Meta-Llama-3.1-8B-Instruct"


    # 2. Clear the GPU memory cache, you're going to need it all!
    torch.cuda.empty_cache()




    # 3. Instantiate a vLLM model instance.
    llm = LLM(model=MODELTORUN,
             enforce_eager=True,
             dtype=torch.bfloat16,
             gpu_memory_utilization=0.5,
             max_model_len=1000,
             seed=415,
             max_num_batched_tokens=3000)

17e4ea8d96a1028f0180c0da3ac65bff.png

# Separate all the context together by space.
    contexts_combined = ' '.join(contexts)
    # Lance Martin, LangChain, says put the best contexts at the end.
    contexts_combined = ' '.join(reversed(contexts))




    # Separate all the unique sources together by comma.
    source_combined = ' '.join(reversed(list(dict.fromkeys(sources))))




    SYSTEM_PROMPT = f"""First, check if the provided Context is relevant to
    the user's question.  Second, only if the provided Context is strongly relevant, answer the question using the Context.  Otherwise, if the Context is not strongly relevant, answer the question without using the Context. 
    Be clear, concise, relevant.  Answer clearly, in fewer than 2 sentences.
    Grounding sources: {source_combined}
    Context: {contexts_combined}
    User's question: {SAMPLE_QUESTION}
    """




    prompts = [SYSTEM_PROMPT]

使用从 Milvus 中检索获得的上下文和原始提问来编写提示,并生成回答。

# Sampling parameters
    sampling_params = SamplingParams(temperature=0.2, top_p=0.95)




    # Invoke the vLLM model.
    outputs = llm.generate(prompts, sampling_params)




    # Print the outputs.
    for output in outputs:
       prompt = output.prompt
       generated_text = output.outputs[0].text
       # !r calls repr(), which prints a string inside quotes.
       print()
       print(f"Question: {SAMPLE_QUESTION!r}")
       pprint.pprint(f"Generated text: {generated_text!r}")

32c91276542560b35797fd5d449a33ee.png

答案十分准确!

​

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

开源大模型实战指南:从LLaMA部署到RAG应用开发 Transformer架构作为现代大语言模型的核心,通过自注意力机制和前馈网络等组件实现了强大的序列建模能力。其技术价值在于为自然语言处理任务提供了统一的框架,推动了AI技术的民主化进程。在实际应用中,开发者常面临模型部署、资源优化和领域适配等工程挑战。针对这些需求,以LLaMA为代表的开源模型生态提供了可行的解决方案,结合LoRA微调技术和RAG检索增强生成框架,能够在有限算力下实现高效的模型定制与应用开发。本文聚焦于开源大模型的实战落地,详细拆解了从环境搭建、模型量化到微调优化的全流程,并深入探讨了如何 阅读详情

相关推荐

大模型应用开发实战:从RAG系统搭建到AI Agent进阶指南

Transformer架构作为现代大模型的核心骨架,通过自注意力机制实现了对上下文信息的并行处理与深度理解,奠定了自然语言处理的技术基石。其技术价值在于将AI从单纯的模式识别提升至具备逻辑推理与内容生成的认知层面,极大地拓展了自动化与智能化的应用边界。在实际工程中,基于检索增强生成(RAG)技术构建私有知识库问答系统,以及利用LangChain等框架开发具备规划与工具调用能力的AI智能体(Agent),已成为企业级AI应用落地的关键路径。本文聚焦于大模型应用开发,深入剖析了从模型选型、RAG系统搭建到智能体

weixin_34055787的博客 334

vLLM初探

是一个快速且易于使用的库,用于 LLM 推理和服务,可以和HuggingFace 无缝集成。vLLM利用了全新的注意力算法「PagedAttention」,有效地管理注意力键和值。在吞吐量方面,vLLM的性能比HuggingFace Transformers(HF)高出 24 倍,文本生成推理(TGI)高出3.5倍。是伯克利大学LMSYS组织开源的大语言模型高速推理框架,旨在极大地提升实时场景下的语言模型服务的吞吐与内存使用效率。

邹中凡 7277

从零搭建私有化AI应用:本地部署、RAG知识库与模型微调实战指南

最近在尝试将大模型应用到实际业务中时,很多开发者都卡在了几个关键环节:如何安全地在本地部署一个可用的模型?如何让模型理解并回答我们私有的知识?如何低成本地让模型适应特定任务?以及,有没有一个现成的平台能快速搭建应用?这些问题看似独立,实则环环相扣,构成了从模型到应用的全链路挑战。 本文将为你系统性地拆解这套组合拳:从大模型的本地部署开始,到构建一个能“读懂”你文档的RAG知识库,再到通过微调让模型更“听话”,最后使用Dify平台快速组装成可用的AI应用。整个过程将提供完整的代码、配置和避坑指南,无论你是想学

caodaoxi的专栏 415

一文说清VLLM .VS.Ollama的区别

对比VLLM与Ollama,解析两者在性能、易用性和应用场景的异同,助你选择合适框架。

打造全国最全的AI Agent开发知识领域的博客 5349

从零搭建AI应用:大模型本地部署、RAG与微调实战指南

最近在尝试将大模型应用到实际业务中时,发现从本地部署、知识库构建到应用开发,每一步都充满了挑战。网上的资料要么过于零散,要么只讲理论缺乏实操,很难形成一套完整的落地闭环。本文将系统性地梳理从大模型本地部署、构建RAG知识库、进行模型微调,到使用Dify搭建AI应用的全流程实战方案。无论你是想入门AI应用开发的学生,还是需要在项目中集成智能能力的工程师,都能从本文中找到可直接复现的代码、配置和避坑指南。 1. AI大模型技术栈全景与核心概念 在深入实操之前,我们需要对当前AI大模型应用开发的核心技术组件有一个

403

大模型应用开发实战:从RAG到Agent的完整指南

大语言模型(LLM)作为当前人工智能的核心技术,其本质是基于海量数据训练出的文本模式预测器,通过统计关联实现文本生成与理解。理解其工作原理是有效应用的基础,这涉及到提示词工程、检索增强生成(RAG)等关键技术。在工程实践中,RAG通过结合向量数据库与外部知识库,能有效解决模型的“幻觉”问题,提升回答的准确性与时效性。而智能体(Agent)框架则赋予模型调用工具、规划任务的能力,是实现复杂工作流自动化的关键。这些技术的价值在于大幅降低了将前沿AI能力集成到实际业务场景的门槛,例如快速构建基于私有知识的智能问答

weixin_30550081的博客 353

使用 Milvus、vLLM 和 Llama 3.1 搭建 RAG 应用

Milvus 是一款开源的分布式向量数据库,可用于存储、索引和搜索向量数据,适用于生成式 AI(GenAI)应用。Milvus 支持 hybrid search、元数据过滤、重排(Reranking),能够高效处理万亿规模的向量,助力开发者搭建 AI 和 ML 应用。您可以在本地运行 Milvus standalone 或 cluster 版本,或者使用全托管的 Milvus 服务——Zilliz Cloud。

m0_59235245的博客 1921

大模型应用开发实战:从RAG、微调到Agent与本地部署

大语言模型(LLM)作为当前人工智能的核心技术,其原理是基于海量数据预训练,通过自注意力机制捕捉序列依赖关系,从而获得强大的生成与理解能力。这项技术的核心价值在于,它将自然语言转化为一种可编程的通用接口,极大地降低了开发智能应用的壁垒。在实际应用场景中,开发者面临两大关键挑战:一是如何让通用模型掌握特定领域的精准知识并避免“幻觉”,二是如何将模型高效、低成本地部署到生产环境。针对这些挑战,检索增强生成(RAG)和模型微调(Fine-tuning)成为连接通用能力与垂直场景的桥梁。RAG通过结合外部知识库来增

weixin_30296405的博客 514

Llama3-8B与向量数据库集成:Milvus部署实战案例

本文介绍了如何在星图GPU平台上自动化部署Meta-Llama-3-8B-Instruct镜像,构建检索增强生成(RAG)系统。通过集成Milvus向量数据库与vLLM推理引擎,该方案可高效支撑企业知识库问答场景,显著提升客服响应准确率与信息完整性。

weixin_31961675的博客 278

企业AI大模型私有化部署实战:从数据安全到RAG应用全解析

在人工智能领域,大模型已成为推动技术革新的核心引擎。其工作原理基于海量数据的深度学习,通过Transformer等架构实现强大的理解和生成能力。这项技术的核心价值在于将通用智能转化为解决特定业务问题的生产力。尤其在金融、医疗、政务等对数据安全与合规性要求极高的行业,如何安全、可控地利用大模型技术成为关键挑战。私有化部署应运而生,它通过将模型、数据和计算全流程置于企业内部环境中,从根本上保障数据不出域,满足严格的合规要求。在此基础上,结合检索增强生成(RAG)技术,可以将企业内部知识库与大模型能力深度融合,构

weixin_30566063的博客 744

LLM 大模型学习必知必会系列(十二):VLLM性能飞跃部署实践:从推理加速到高效部署的全方位优化[更多内容:XInference/FastChat等框架]

LLM 大模型学习必知必会系列(十二):VLLM性能飞跃部署实践:从推理加速到高效部署的全方位优化[更多内容:XInference/FastChat等框架]

丨汀、的博客 6373

新书速览|构建私有化大模型应用系统:部署、推理与知识库搭建

构建私有化大模型应用系统:部署、推理与知识库搭建》以“技术实操+场景赋能”为主线,系统介绍从架构设计到业务集成的全流程,为开发者、架构师及企业决策者提供一本不可多得的实践指南。读者可通过本书系统掌握。无论是希望提升现有系统的响应速度,还是需要构建高并发API服务,《构建私有化大模型应用系统:部署、推理与知识库搭建》均提供可复用的代码模板与调优方法论。等主流模型的部署方式,理解vLLM、TGI等推理引擎的性能调优手段,并掌握向量化表示、FAISS/Milvus索引构建及RAG问答系统的完整流程。

quanzhankaifaqua的博客 1001

大模型推理加速框架vllm部署的实战方案

本文主要介绍了大模型推理加速框架vllm部署的实战方案,希望对学习大语言模型的同学们有所帮助。 文章目录 1. 前言 2. 配置环境 2.1 安装虚拟环境 2.2 安装依赖库 3. 运行vllm

herosunly的博客 3万+

Meta Llama 3.1开源大模型:从战略解析到本地部署实战指南

开源大语言模型(LLM)正成为AI基础设施领域的关键力量,其核心原理在于通过Transformer架构处理海量文本数据,实现强大的语言理解和生成能力。这一技术价值在于打破了闭源模型的API依赖与成本壁垒,为开发者提供了可私有化部署、深度定制且数据安全的替代方案。在应用场景上,开源LLM尤其适用于对数据隐私有严格要求的金融、医疗等行业,以及需要将模型深度集成到自有产品中的企业级应用。Meta开源的Llama 3.1系列模型,凭借其从80亿到4050亿参数的完整矩阵,精准地填补了这一市场空白,成为当前开源生态中

weixin_30729609的博客 380

微信小程序地图开发避坑指南:腾讯地图API从配置到实战(附完整代码)

本文详细解析微信小程序中腾讯地图API的开发实践,从基础配置到高级功能实现,涵盖地图显示、地点搜索、路线规划等核心功能,并提供完整代码示例和常见问题解决方案,帮助开发者高效避坑。特别针对JavaScript SDK和map组件的使用进行了深度优化指导。

weixin_33725722的博客 486

Android Termux 安装Kali Linux 或 kali Nethunter史诗级详细教程

Termux 安装kali

风云小虾米的博客 6万+

AIGC工程师实战:从零搭建私有知识库大模型全流程指南

大语言模型作为当前人工智能领域的核心技术,通过海量数据预训练获得了强大的通用语言理解和生成能力。其核心原理是基于Transformer架构的自注意力机制,能够捕捉文本中的长距离依赖关系。这一技术价值在于将通用认知能力与特定领域知识结合,解决企业数据安全、知识时效性和专业术语理解等痛点。在应用场景上,私有化部署的大模型能够深度整合企业内部非公开数据,如产品手册、流程文档和客服记录,形成可控、可进化的专属智能体。本文聚焦于检索增强生成和模型微调两大技术路径,详细解析如何利用LangChain、LlamaInde

weixin_33690367的博客 440

DFT ATPG提升coverage的方法

采用更精确的故障模型,如桥接故障模型(用于描述电路中不应连接的节点之间的短路故障)和路径延迟故障模型(考虑信号在电路路径上的传输延迟),可以使ATPG工具生成更有效的测试向量来覆盖这些特殊故障。假设电路中有一个与门的输入引脚存在固定为0的故障(stuck - at - 0),D - 算法会分析与门的其他输入以及与门输出连接的后续电路逻辑,从而确定整个电路的输入值,使得当该故障存在时,电路的输出与无故障时不同。通过增加测试向量的类型,如功能测试向量和结构测试向量的结合,可以提高故障覆盖率。

Loving_enjoy的博客 969

企业级AI助手平台搭建:多模型切换与RAG知识增强

在AI助手领域,模型路由和知识增强是提升系统性能的关键技术。模型路由通过智能调度算法实现GPT-4、Claude等不同大语言模型的热切换,确保服务稳定性;RAG(检索增强生成)技术则通过向量数据库对接企业知识库,有效解决AI幻觉问题。这两种技术的结合,使得企业能够构建具备专业领域知识、响应稳定的智能对话系统。本文以教育科技场景为例,详细解析如何基于LlamaIndex、LangChain等开源框架,搭建支持可视化编排的企业级AI助手平台,涵盖从架构设计到性能优化的全流程实践。

weixin_34195142的博客 465

3DE重客户端安装

3DE重客户端安装

m0_48170265的博客 9429

SAP-ABAP:SAP IDOC 全面学习指南

SAP-ABAP:SAP IDOC 全面学习指南

baidu_35680696的博客 1616

工业AI大模型实战:从零构建私有化部署与RAG应用

人工智能大模型正从通用领域向工业场景深化,其核心价值在于处理海量多模态数据、实现复杂模式识别与智能决策。技术原理上,大模型基于Transformer架构,通过预训练与微调适应特定任务。在工业领域,其技术价值体现在推动AI从“感知诊断”向“认知决策”跃迁,例如实现复杂根因分析、生产流程优化与知识沉淀。应用场景广泛覆盖智能质检、供应链调度与预测性维护等关键环节。本文聚焦工业AI大模型落地,深入探讨如何通过检索增强生成(RAG)框架与私有化部署解决数据安全与模型“幻觉”问题,并提供从提示工程、微调到基于LangC

weixin_33853827的博客 428

Spring AI 项目实战(十二):Spring Boot +AI + DeepSeek + 百度OCR 公司发票智能处理系统的技术实践(附完整源码)

本文介绍了基于百度OCR API与DeepSeek AI的发票智能处理系统,通过整合AI技术实现发票识别、信息提取和验证的全流程自动化。系统采用Spring Boot 3.2.0架构,结合百度OCR的高精度图像识别和DeepSeek的语义理解能力,显著提升了发票处理效率与准确率。关键技术包括多模型融合、智能错误纠正和自适应学习机制,实现了95%以上的识别准确率,将传统处理效率提升90%以上。该系统为数字化转型中的企业财务管理提供了智能化解决方案,具备高精度识别、实时处理、智能验证等核心优势。

博客 1627

大模型应用开发实战:技术栈与优化策略

大模型应用开发已成为AI领域的重要方向,其核心在于结合Prompt工程、RAG(检索增强生成)和微调等技术,实现高效的知识处理与智能响应。通过合理选择技术栈(如FastAPI、vLLM和Milvus),开发者可以构建高性能的企业级应用,如智能客服和知识问答系统。在实际应用中,推理加速(如量化压缩和批处理优化)和成本控制(如混合模型使用和智能路由)是关键挑战。本文以电商和法律咨询为例,展示了大模型如何显著提升业务效率,同时分享了监控与运维的最佳实践。

weixin_33788244的博客 409

我用 Python 把 Claude 变成了 “代码审查员“:每次提交前 AI 先 Review,Bug 漏网率降了 80%

这是成败的关键。我们需要给 Claude 立规矩,让它像一个严格的架构师那样思考。你是一名资深的首席软件架构师和安全专家。请审查以下 Git Diff 代码变更。你的任务是:1. **安全性检查**:寻找 SQL 注入、XSS、硬编码密钥、敏感信息泄露等。2. **潜在 Bug**:空指针、资源未关闭、竞态条件、逻辑死循环。3. **代码质量**:命名规范、冗余代码、可读性差、缺乏注释。4. **性能优化**:不必要的数据库查询、低效算法。

BUG猿的博客 144

流体动力学仿真软件:Star-CCM+_(1).Star-CCM+基础及入门

Star-CCM+的用户界面(UI)分为多个部分,包括菜单栏、工具栏、工作区、视图窗口和控制台。菜单栏包含文件、编辑、视图、工具等常用菜单。例如,“File”菜单可以用于打开、保存和退出项目。工具栏提供常用的工具按钮,如新建项目、打开项目、保存项目等。也可以自定义工具栏,添加常用的功能按钮。工作区显示当前项目的结构和各个对象。可以通过拖拽方式组织和管理项目中的各个部分。视图窗口显示几何模型、网格、结果等。可以通过不同的视图模式查看和分析数据。控制台显示软件的运行日志和输出信息。

kkchenjj的博客 1201
上一篇: 普通人,适合转行大模型吗?大模型的未来前景怎么样?
下一篇: 浅谈大模型私有化+精调:面向垂直行业与特定场景之需
我爱学大模型
博客等级 码龄3年 7883粉丝 687原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值