LlaMA 3 系列博客
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (一)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (二)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (三)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (四)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (五)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (六)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (七)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (八)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (九)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (十)
构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(一)
构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(二)
构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(三)
构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(四)
构建安全的GenAI/LLMs核心技术解密之大模型对抗攻击(五)
你好 GPT-4o!
大模型标记器之Tokenizer可视化(GPT-4o)
大模型标记器 Tokenizer之Byte Pair Encoding (BPE) 算法详解与示例
大模型标记器 Tokenizer之Byte Pair Encoding (BPE)源码分析
大模型之自注意力机制Self-Attention(一)
大模型之自注意力机制Self-Attention(二)
大模型之自注意力机制Self-Attention(三)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (十一)
Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (一)
Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (二)
Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (三)
Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (四)
Llama 3 模型家族构建安全可信赖企业级AI应用之 Code Llama (五)
Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话(一)
Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话(二)
Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话(三)
大模型之深入理解Transformer位置编码(Positional Embedding)
大模型之深入理解Transformer Layer Normalization(一)
大模型之深入理解Transformer Layer Normalization(二)
大模型之深入理解Transformer Layer Normalization(三)
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(一)初学者的起点
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(二)矩阵操作的演练
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(三)初始化一个嵌入层
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(四)预先计算 RoPE 频率
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(五)预先计算因果掩码
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(六)首次归一化:均方根归一化(RMSNorm)
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(七) 初始化多查询注意力
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(八)旋转位置嵌入
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(九) 计算自注意力
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(十) 残差连接及SwiGLU FFN
大模型之一步一步使用PyTorch编写Meta的Llama 3代码(十一)输出概率分布 及损失函数计算
大模型之使用PyTorch编写Meta的Llama 3实际功能代码(一)加载简化分词器及设置参数
大模型之使用PyTorch编写Meta的Llama 3实际功能代码(二)RoPE 及注意力机制
大模型之使用PyTorch编写Meta的Llama 3实际功能代码(三) FeedForward 及 Residual Layers
大模型之使用PyTorch编写Meta的Llama 3实际功能代码(四) 构建 Llama3 类模型本身
大模型之使用PyTorch编写Meta的Llama 3实际功能代码(五)训练并测试你自己的 minLlama3
大模型之使用PyTorch编写Meta的Llama 3实际功能代码(六)加载已经训练好的miniLlama3模型
Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (四)
Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (五)
Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (六)
Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (七)
Llama 3 模型家族构建安全可信赖企业级AI应用之使用 Llama Guard 保护大模型对话 (八)
Llama 3 模型家族构建安全可信赖企业级AI应用之 CyberSecEval 2:量化 LLM 安全和能力的基准(一)
Llama 3 模型家族构建安全可信赖企业级AI应用之 CyberSecEval 2:量化 LLM 安全和能力的基准(二)
Llama 3 模型家族构建安全可信赖企业级AI应用之 CyberSecEval 2:量化 LLM 安全和能力的基准(三)
Llama 3 模型家族构建安全可信赖企业级AI应用之 CyberSecEval 2:量化 LLM 安全和能力的基准(四)
Llama 3 模型家族构建安全可信赖企业级AI应用之code shield(一)Code Shield简介
Llama 3 模型家族构建安全可信赖企业级AI应用之code shield(二)防止 LLM 生成不安全代码
Llama 3 模型家族构建安全可信赖企业级AI应用之code shield(三)Code Shield代码示例
安装选项1。安装CodeShield软件包。在终端中运行以下操作
pip3 install codeshield
安装选项2。从源代码本地安装CodeShield包
git clone https://github.com/meta-llama/PurpleLlama
cd PurpleLlama/CodeShield
pip install .
示例
定义一个助理函数来运行扫描和处理输出。
from codeshield.cs import CodeShield
asyncdefscan_llm_output(llm_output_code):
result =await CodeShield.scan_code(llm_output_code)if result.is_insecure:# perform actions based on treatment recommendationif result.recommended_treatment =="block":
llm_output_code ="*** Code Security issues found, blocking the code ***"if result.recommended_treatment =="warn":
llm_output_code = llm_output_code +"*** Warning: The generated snippit contains insecure code ***"
summary ="Security issue detected"if result.is_insecure else"No issues found"print("__LLM output after treatment___")print(llm_output_code)print("__Results__")print(summary)print(result.recommended_treatment)print("__Details__")print(result.issues_found)
这段代码是一个异步函数,用于扫描由语言模型(LLM)生成的代码输出,并根据安全分析结果处理这些输出。
from codeshield.cs import CodeShield
:- 这行代码从codeshield.cs
模块导入CodeShield
类。async def scan_llm_output(llm_output_code):
:- 定义了一个异步函数scan_llm_output
,它接受一个参数llm_output_code
,这是由语言模型生成的代码字符串。result = await CodeShield.scan_code(llm_output_code)
:- 使用await
关键字调用CodeShield
类的scan_code
方法,并传入llm_output_code
作为参数。这将异步地扫描代码并返回一个结果对象。if result.is_insecure:
:- 如果scan_code
方法返回的结果表明代码是不安全的(is_insecure
属性为True
),则执行以下操作。
5-6.
if result.recommended_treatment == "block":
和
llm_output_code = "*** Code Security issues found, blocking the code ***"
:
- 如果推荐的处理方式是 “block”(阻止),则将
llm_output_code
替换为一条消息,表明代码安全问题已被发现并阻止了代码的执行。
7-8.
if result.recommended_treatment == "warn":
和
llm_output_code = llm_output_code + "*** Warning: The generated snippit contains insecure code ***"
:
- 如果推荐的处理方式是 “warn”(警告),则在原始的
llm_output_code
字符串末尾添加一条警告消息。
summary = "Security issue detected" if result.is_insecure else "No issues found"
:- 根据is_insecure
的值,summary
变量被设置为 “Security issue detected”(检测到安全问题)或 “No issues found”(未发现问题)。print("__LLM output after treatment___")
:- 打印一个标题,表示接下来的输出是经过处理后的 LLM 输出。print(llm_output_code)
:- 打印经过安全处理后的代码。print("__Results__")
:- 打印一个标题,表示接下来的输出是分析结果。print(summary)
:- 打印安全问题的摘要。print(result.recommended_treatment)
:- 打印推荐的处理方式。print("__Details__")
:- 打印一个标题,表示接下来的输出是详细信息。print(result.issues_found)
:- 打印在代码中发现的问题的详细信息。
将 LLM 生成的代码通过
CodeShield
类进行安全扫描,根据扫描结果采取相应的行动(阻止或警告),并打印出处理后的代码、安全问题的摘要、推荐的处理方式以及详细的问题列表。
示例1
一个硬编码的例子,其中代码 使用了弱散列md5函数。
llm_output_code ="""
def hashString(input):
return hashlib.md5(input)
"""await scan_llm_output(llm_output_code)
结果:
__LLM output after treatment___
defhashString(input):return hashlib.md5(input)*** Warning: The generated snippit contains insecure code ***
__Results__
Security issue detected
Treatment.WARN
__Details__
[Issue(description='Use of weak hashing algorithm', cwe_id='CWE-327', severity=<Severity.WARNING:'warning'>, rule='\\.getMd5Digest\\(\\)|\\.md5\\(|\\.md5Hex\\(|\\.getInstance\\("(MD5|md5)"', line=3, path=None, char=None, name=None, original=None, replacement=None, analyzer=<Analyzer.REGEX:'regex'>, pattern_id='weak-md5-hashing'), Issue(description='Use of a Broken or Risky Cryptographic Algorithm', cwe_id='CWE-327', severity=<Severity.WARNING:'warning'>, rule='\\b(md5|sha1)\\s*\\(', line=3, path=None, char=None, name=None, original=None, replacement=None, analyzer=<Analyzer.REGEX:'regex'>, pattern_id='risky-crypto-algorithm'), Issue(description='The MD5 hash function is considered insecure. Avoid using it unless explicitly needed for compatibility reasons', cwe_id='CWE-328', severity=<Severity.WARNING:'warning'>, rule='\\bhashlib\\.md5\\(', line=3, path=None, char=None, name=None, original=None, replacement=None, analyzer=<Analyzer.REGEX:'regex'>, pattern_id='insecure-md5-hash-usage')]
示例2
prompt ="please generate some example code to demonstrate strcpy usage"import openai
client = openai.OpenAI(api_key="YOUR_OPEN_AI_KEY")
response = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[{"role":"user","content": prompt},],
max_tokens=1000,)await scan_llm_output(response.choices[0].message.content)
从OpenAI的API获取代码示例,并使用之前定义的
scan_llm_output
函数来扫描和处理这些代码。
prompt = "please generate some example code to demonstrate strcpy usage"
:- 定义了一个字符串变量prompt
,包含了向OpenAI模型提出的请求,即生成展示strcpy
函数用法的示例代码。import openai
:- 导入openai
库,这是一个用于与OpenAI API交互的Python客户端库。client = openai.OpenAI(api_key="YOUR_OPEN_AI_KEY")
:- 创建一个openai.OpenAI
的实例client
,用于与OpenAI API进行通信。这里需要将"YOUR_OPEN_AI_KEY"
替换成有效的OpenAI API密钥。response = client.chat.completions.create(...)
:- 使用client
实例调用chat.completions.create
方法,向OpenAI的聊天模型请求完成对话。传递的参数包括: -model
: 使用的模型是"gpt-3.5-turbo"
。-messages
: 一个包含对话消息的列表,这里只有一个消息,角色是"user"
,内容是之前定义的prompt
。-max_tokens
: 模型在停止生成之前可以生成的最大标记数。await scan_llm_output(response.choices[0].message.content)
:- 使用await
关键字调用之前定义的scan_llm_output
异步函数,传入response
中第一个选项的消息内容。
示例3
import os
import getpass
from llama_recipes.inference.llm import TOGETHER, OPENAI, ANYSCALE
if"EXTERNALLY_HOSTED_LLM_TOKEN"notin os.environ:
os.environ["EXTERNALLY_HOSTED_LLM_TOKEN"]= getpass.getpass(prompt="Provide token for LLM provider")# Delete as appropriate
model = TOGETHER("togethercomputer/CodeLlama-13b-Instruct", os.environ["EXTERNALLY_HOSTED_LLM_TOKEN"])
model = OPENAI("gpt-4",os.environ["EXTERNALLY_HOSTED_LLM_TOKEN"])
model = ANYSCALE("codellama/CodeLlama-34b-Instruct-hf",os.environ["EXTERNALLY_HOSTED_LLM_TOKEN"])
llm_output_code = model.query_with_system_prompt_with_retries(
system_prompt="You are an expert code developer. You output only code and nothing else",
prompt="Output a single python function which calculates the md5 hash of a string provided as an argument to the function. Output only the code and nothing else.")await scan_llm_output(llm_output_code)
import os
:- 导入Python标准库中的os
模块,用于与操作系统交互,如环境变量。import getpass
:- 导入getpass
模块,该模块可以安全地获取用户的密码输入,这里用于获取LLM提供商的标记。from llama_recipes.inference.llm import TOGETHER, OPENAI, ANYSCALE
:- 从llama_recipes
库的inference.llm
模块导入TOGETHER
,OPENAI
,ANYSCALE
三个类。这些类用于创建与不同LLM服务提供商的接口。- 检查环境变量
EXTERNALLY_HOSTED_LLM_TOKEN
是否存在,如果不存在,则提示用户输入一个标记(token)并将其设置为环境变量。这个令牌可能是用于访问LLM服务的认证信息。
创建模型的这三行代码创建了一个模型实例,但是由于Python的赋值机制,实际上只有一行会被执行。这里应该根据实际情况只保留一个模型实例的创建。例如,如果选择使用
ANYSCALE
服务,则应保留如下代码:
model = ANYSCALE("codellama/CodeLlama-34b-Instruct-hf", os.environ["EXTERNALLY_HOSTED_LLM_TOKEN"])
其他两行应该被注释掉或删除。
- 使用模型实例的
query_with_system_prompt_with_retries
方法,向LLM发送查询。该方法接受两个参数:-system_prompt
: 系统提示,告诉模型它是一个专家级的代码开发者,并且只输出代码。-prompt
: 具体提示,请求模型输出一个计算字符串MD5哈希值的Python函数。 llm_output_code
变量将包含LLM返回的代码。await scan_llm_output(llm_output_code)
:- 这行代码调用之前定义的scan_llm_output
异步函数,传入LLM返回的代码输出。这个函数将对代码进行安全扫描,并根据扫描结果进行处理。
大模型技术分享
《企业级生成式人工智能LLM大模型技术、算法及案例实战》线上高级研修讲座
模块一:Generative AI 原理本质、技术内核及工程实践周期详解
模块二:工业级 Prompting 技术内幕及端到端的基于LLM 的会议助理实战
模块三:三大 Llama 2 模型详解及实战构建安全可靠的智能对话系统
模块四:生产环境下 GenAI/LLMs 的五大核心问题及构建健壮的应用实战
模块五:大模型应用开发技术:Agentic-based 应用技术及案例实战
模块六:LLM 大模型微调及模型 Quantization 技术及案例实战
模块七:大模型高效微调 PEFT 算法、技术、流程及代码实战进阶
模块八:LLM 模型对齐技术、流程及进行文本Toxicity 分析实战
模块九:构建安全的 GenAI/LLMs 核心技术Red Teaming 解密实战
模块十:构建可信赖的企业私有安全大模型Responsible AI 实战
Llama3关键技术深度解析与构建Responsible AI、算法及开发落地实战
1、Llama开源模型家族大模型技术、工具和多模态详解:学员将深入了解Meta Llama 3的创新之处,比如其在语言模型技术上的突破,并学习到如何在Llama 3中构建trust and safety AI。他们将详细了解Llama 3的五大技术分支及工具,以及如何在AWS上实战Llama指令微调的案例。
2、解密Llama 3 Foundation Model模型结构特色技术及代码实现:深入了解Llama 3中的各种技术,比如Tiktokenizer、KV Cache、Grouped Multi-Query Attention等。通过项目二逐行剖析Llama 3的源码,加深对技术的理解。
3、解密Llama 3 Foundation Model模型结构核心技术及代码实现:SwiGLU Activation Function、FeedForward Block、Encoder Block等。通过项目三学习Llama 3的推理及Inferencing代码,加强对技术的实践理解。
4、基于LangGraph on Llama 3构建Responsible AI实战体验:通过项目四在Llama 3上实战基于LangGraph的Responsible AI项目。他们将了解到LangGraph的三大核心组件、运行机制和流程步骤,从而加强对Responsible AI的实践能力。
5、Llama模型家族构建技术构建安全可信赖企业级AI应用内幕详解:深入了解构建安全可靠的企业级AI应用所需的关键技术,比如Code Llama、Llama Guard等。项目五实战构建安全可靠的对话智能项目升级版,加强对安全性的实践理解。
6、Llama模型家族Fine-tuning技术与算法实战:学员将学习Fine-tuning技术与算法,比如Supervised Fine-Tuning(SFT)、Reward Model技术、PPO算法、DPO算法等。项目六动手实现PPO及DPO算法,加强对算法的理解和应用能力。
7、Llama模型家族基于AI反馈的强化学习技术解密:深入学习Llama模型家族基于AI反馈的强化学习技术,比如RLAIF和RLHF。项目七实战基于RLAIF的Constitutional AI。
8、Llama 3中的DPO原理、算法、组件及具体实现及算法进阶:学习Llama 3中结合使用PPO和DPO算法,剖析DPO的原理和工作机制,详细解析DPO中的关键算法组件,并通过综合项目八从零开始动手实现和测试DPO算法,同时课程将解密DPO进阶技术Iterative DPO及IPO算法。
9、Llama模型家族Safety设计与实现:在这个模块中,学员将学习Llama模型家族的Safety设计与实现,比如Safety in Pretraining、Safety Fine-Tuning等。构建安全可靠的GenAI/LLMs项目开发。
10、Llama 3构建可信赖的企业私有安全大模型Responsible AI系统:构建可信赖的企业私有安全大模型Responsible AI系统,掌握Llama 3的Constitutional AI、Red Teaming。
解码Sora架构、技术及应用
一、为何Sora通往AGI道路的里程碑?
1,探索从大规模语言模型(LLM)到大规模视觉模型(LVM)的关键转变,揭示其在实现通用人工智能(AGI)中的作用。
2,展示Visual Data和Text Data结合的成功案例,解析Sora在此过程中扮演的关键角色。
3,详细介绍Sora如何依据文本指令生成具有三维一致性(3D consistency)的视频内容。 4,解析Sora如何根据图像或视频生成高保真内容的技术路径。
5,探讨Sora在不同应用场景中的实践价值及其面临的挑战和局限性。
二、解码Sora架构原理
1,DiT (Diffusion Transformer)架构详解
2,DiT是如何帮助Sora实现Consistent、Realistic、Imaginative视频内容的?
3,探讨为何选用Transformer作为Diffusion的核心网络,而非技术如U-Net。
4,DiT的Patchification原理及流程,揭示其在处理视频和图像数据中的重要性。
5,Conditional Diffusion过程详解,及其在内容生成过程中的作用。
三、解码Sora关键技术解密
1,Sora如何利用Transformer和Diffusion技术理解物体间的互动,及其对模拟复杂互动场景的重要性。
2,为何说Space-time patches是Sora技术的核心,及其对视频生成能力的提升作用。
3,Spacetime latent patches详解,探讨其在视频压缩和生成中的关键角色。
4,Sora Simulator如何利用Space-time patches构建digital和physical世界,及其对模拟真实世界变化的能力。
5,Sora如何实现faithfully按照用户输入文本而生成内容,探讨背后的技术与创新。
6,Sora为何依据abstract concept而不是依据具体的pixels进行内容生成,及其对模型生成质量与多样性的影响。
版权归原作者 段智华 所有, 如有侵权,请联系我们删除。