Llama:人人触手可及的AI

本文介绍了Meta的Llama 3大型语言模型,强调了其开放性和广泛应用潜力,并讨论了其在网络安全领域的影响。文章还提供了在本地运行Llama 3以及与Python和OpenAI集成的示例。

Llama:人人触手可及的 AI

几十年以来,AI(人工智能)一直是计算机科学中一个可爱的小课题,研究人员主要在封闭的会议中聚在一起,讨论如何稍微推进事情的发展。这通常是一个小型社区,并没有过多地延伸到我们的日常生活中。虽然模糊逻辑进入了我们的洗衣机,但对于我们的工作生活,它几乎没有产生大规模的影响。

但所有这些都将改变,世界上最先进的 AI 模型可能会掌握在地球上几乎每个人的手中。无论你是工程师、经理、会计师还是创新者,AI 现在都在你手中。因此,忘记电子表格和专家系统的时代吧;这可能是我们创造过的最强大的商业工具,但它也是将在我们的生活中引起如此多颠覆的工具。

OpenAI、Microsoft 和 Google 通过道德和伦理约束来限制他们的系统,但 Llama-3(大型语言模型 Meta AI)将强大的 AI 交给地球上的每位公民——而这些公民可能没有像你我一样的道德和伦理约束。

Llama 3 使用 20 种语言的数据进行训练,可以有 80 亿到 700 亿个参数 [ here]:

最重要的事情之一是,编码和模型权重可用于研究目的。这将允许任何公民访问高级 AI 模型。人们认为 GPT-3 训练不足,而 Llama 3 接受了更长时间的训练,并且使用了更大的数据集。那么,让我们在本地运行 Llama。

在本地运行

有几种运行 Llama 的方法,例如使用 Opera 浏览器。在这种情况下,我们将使用 Ollama 程序,它可以下载 Llama 模型并在本地运行它们。对于 Mac,我们可以安装 ollama [ here] 并运行:

Available Commands:
  serve       Start ollama
  create      Create a model from a Modelfile
  show        Show information for a model
  run         Run a model
  stop        Stop a running model
  pull        Pull a model from a registry
  push        Push a model to a registry
  list        List models
  ps          List running models
  cp          Copy a model
  rm          Remove a model
  help        Help about any command

Flags:
  -h, --help      help for ollama
  -v, --version   Show version information

要获取模型并运行它:

% ollama pull llama3
% ollama run llama3
>>> What is elliptic curve cryptography
椭圆曲线密码学 (ECC) 是一种公钥加密方法,它
使用椭圆曲线的数学特性来创建安全密钥。
它用于建立安全连接并保护敏感数据
在互联网上。
>>>

如果我们需要更大的模型,我们可以使用 70b:

% ollama pull llama3:70b
% ollama run llama3:70b
⠋

我们现在可以列出我们的模型:

% ollama list
NAME             ID              SIZE      MODIFIED
llama3:70b       786f3184aec0    39 GB     2 hours ago
llama3:latest    365c0bd3c000    4.7 GB    2 hours ago

对于标准模型,我们有 80 亿个参数:

% ollama show llama3:latest
  Model
    architecture        llama
    parameters          8.0B
    context length      8192
    embedding length    4096
    quantization        Q4_0

  Capabilities
    completion

  Parameters
    num_keep    24
    stop        "<|start_header_id|>"
    stop        "<|end_header_id|>"
    stop        "<|eot_id|>"

  License
    META LLAMA 3 COMMUNITY LICENSE AGREEMENT
    Meta Llama 3 Version Release Date: April 18, 2024

对于 70b,我们有 706 亿个参数:

% ollama show llama3:70b
  Model
    architecture        llama
    parameters          70.6B
    context length      8192
    embedding length    8192
    quantization        Q4_0

  Capabilities
    completion

  Parameters
    num_keep    24
    stop        "<|start_header_id|>"
    stop        "<|end_header_id|>"
    stop        "<|eot_id|>"

  License
    META LLAMA 3 COMMUNITY LICENSE AGREEMENT
    Meta Llama 3 Version Release Date: April 18, 2024

Python 集成

现在我们可以集成 Python,使用:

from ollama import chat
from ollama import ChatResponse

response: ChatResponse = chat(model='llama3.2', messages=[\
  {\
    'role': 'user',\
    'content': 'What is Elliptic Curve Cryptography?',\
  },\
])
print(response['message']['content'])
## or access fields directly from the response object
print(response.message.content)

当我们现在运行时,我们得到:

% python 11.py
椭圆曲线密码学 (ECC) 是一种公钥密码学,它使用椭圆曲线的数学特性来创建安全的加密和解密算法。ECC 基于计算有限域中离散对数的难度,这使得它比传统的基于 RSA 的密码学更有效和安全。

以下是一个简要概述:

**什么是椭圆曲线?**

椭圆曲线是一个数学概念,它表示二维平面中的一条曲线,由涉及复数的方程定义。在 ECC 中,该曲线被用作密码算法的基础,该算法依赖于计算有限域中离散对数的难度。

**ECC 如何工作?**

在 ECC 中,公钥是使用称为“点加法”运算的数学函数从私钥生成的。公钥由椭圆曲线上的一个点表示,而私钥用于通过数学公式生成该点。

以下是 ECC 如何工作的一个示例:

1. 发送者想要向接收者发送加密数据。
2. 发送者生成一个随机数 (k) 并使用它来使用椭圆曲线方程计算公钥 (P)。
3. 发送者使用公钥 (P) 加密数据。
4. 接收者接收加密数据并使用他们的私钥 (Q) 解密数据。

**ECC 的安全优势**

ECC 具有多个安全优势:

1. **密钥尺寸小**:ECC 比传统的基于 RSA 的密码学需要的密钥小得多,从而更容易管理密钥并降低存储成本。
2. **更高的安全性**:由于计算有限域中离散对数的难度,ECC 被认为比传统密码学更安全。
3. **快速计算**:ECC 算法通常比传统的基于 RSA 的算法更快,使其适用于高速应用。

**ECC 的常见用途**

ECC 广泛用于各个领域:

1. **安全网络浏览 (HTTPS)**:ECC 用于保护在线交易和通信。
2. **智能卡和Token**:ECC 用于保护智能卡和Token上的身份验证和加密。
3. **加密货币**:ECC 用于某些加密货币中,例如比特币和以太坊,用于生成私钥。

**总之**,椭圆曲线密码学 (ECC) 是一种安全高效的公钥密码学算法,它使用椭圆曲线的数学特性来创建安全的加密和解密算法。其密钥尺寸小、安全性更高和计算速度快使其成为各种应用中的热门选择,包括安全网络浏览、智能卡和加密货币。
椭圆曲线密码学 (ECC) 是一种公钥密码学,它使用椭圆曲线的数学特性来创建安全的加密和解密算法。ECC 基于计算有限域中离散对数的难度,这使得它比传统的基于 RSA 的密码学更有效和安全。

以下是一个简要概述:

**什么是椭圆曲线?**

椭圆曲线是一个数学概念,它表示二维平面中的一条曲线,由涉及复数的方程定义。在 ECC 中,该曲线被用作密码算法的基础,该算法依赖于计算有限域中离散对数的难度。

**ECC 如何工作?**

在 ECC 中,公钥是使用称为“点加法”运算的数学函数从私钥生成的。公钥由椭圆曲线上的一个点表示,而私钥用于通过数学公式生成该点。

以下是 ECC 如何工作的一个示例:

1. 发送者想要向接收者发送加密数据。
2. 发送者生成一个随机数 (k) 并使用它来使用椭圆曲线方程计算公钥 (P)。
3. 发送者使用公钥 (P) 加密数据。
4. 接收者接收加密数据并使用他们的私钥 (Q) 解密数据。

**ECC 的安全优势**

ECC 具有多个安全优势:

1. **密钥尺寸小**:ECC 比传统的基于 RSA 的密码学需要的密钥小得多,从而更容易管理密钥并降低存储成本。
2. **更高的安全性**:由于计算有限域中离散对数的难度,ECC 被认为比传统密码学更安全。
3. **快速计算**:ECC 算法通常比传统的基于 RSA 的算法更快,使其适用于高速应用。

**ECC 的常见用途**

ECC 广泛用于各个领域:

1. **安全网络浏览 (HTTPS)**:ECC 用于保护在线交易和通信。
2. **智能卡和Token**:ECC 用于保护智能卡和Token上的身份验证和加密。
3. **加密货币**:ECC 用于某些加密货币中,例如比特币和以太坊,用于生成私钥。

**总之**,椭圆曲线密码学 (ECC) 是一种安全高效的公钥密码学算法,它使用椭圆曲线的数学特性来创建安全的加密和解密算法。其密钥尺寸小、安全性更高和计算速度快使其成为各种应用中的热门选择,包括安全网络浏览、智能卡和加密货币。

OpenAI 集成

使用 OpenAI,我们需要一个 API 密钥来运行提示[ here]:

from openai import OpenAI
import sys

client = OpenAI(api_key='API KEY HERE')

msg="."

if (len(sys.argv)>1):
        msg=str(sys.argv[1])

try:
        completion = client.chat.completions.create(messages=[{ "role": "user", "content": msg, } ],model="gpt-3.5-turbo",)
        str = completion.choices[0].message.content
        print(str)
except Exception as e:
    print("An error occurred:", str(e))

一个示例运行给出:

Explain blockchain

区块链方法是用于在区块链网络上记录、验证和保护交易的技术流程和算法。这些方法是确保存储在区块链上的数据的完整性和安全性的关键。

区块链技术中使用的一些常用方法包括:

1. 密码学:区块链网络严重依赖密码学算法来保护交易并验证网络参与者的身份。公钥密码学通常用于创建数字签名,以提供所有权和真实性的证明。

2. 共识机制:共识机制用于验证交易并确保区块链网络上的所有节点都同意账本的状态。一些流行的共识机制包括工作量证明 (PoW)、权益证明 (PoS) 和委托权益证明 (DPoS)。

3. 数据结构:区块链使用链表数据结构将交易数据存储在一系列块中。每个块包含一个交易列表、对前一个块的引用以及一个唯一的哈希值,该哈希值用作该块的数字指纹。

4. 智能合约:智能合约是存储在区块链网络上的自执行合约,并在满足某些条件时自动执行。这些合约是用代码编写的,可以促进交易、强制执行协议和自动化流程,而无需中介。

5. 网络架构:区块链网络通常是去中心化的,这意味着它们分布在共同维护账本的多个节点上。这种分布式架构有助于防止单点故障,并使网络更能抵抗攻击。

总的来说,区块链方法旨在创建一个安全、透明和防篡改的系统,用于记录和验证交易。通过利用密码学技术、共识机制、数据结构和智能合约,区块链技术可以在无需中介的情况下实现无需信任和可验证的交易。

对于 DALLE-3 [ here]:

from openai import OpenAI
import sys

client = OpenAI(api_key='API KEY HERE')

msg="."

if (len(sys.argv)>1):
        msg=str(sys.argv[1])

try:
        response = client.images.generate(model="dall-e-3",prompt=msg,size="1024x1024",quality="standard",n=1,)
        print(f"<img src='{response.data[0].url}' width=800px />")
except Exception as e:
    print("An error occurred:", str(e))

对于:

Illustrate Bob, Alice and Eve within a cybersecurity environment

绘制 Bob、Alice 和 Eve 在网络安全环境中的图像

我们得到:

结论

试想一下,Llama 3 在每个对手手中!它彻底改变了网络安全的世界。

  • 原文链接: medium.com/asecuritysite...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
asecuritysite
asecuritysite
江湖只有他的大名,没有他的介绍。