Zipline 3.0 中文文档(一)(2)

简介: Zipline 3.0 中文文档(一)

Zipline 3.0 中文文档(一)(1)https://developer.aliyun.com/article/1523875

依赖项

Debian 衍生的 Linux 发行版上,您可以通过运行以下命令从apt获取所有必要的二进制依赖项:

$  sudo  apt  install  libatlas-base-dev  python-dev  gfortran  pkg-config  libfreetype6-dev  hdf5-tools 

在最近的RHEL 衍生的 Linux 发行版(例如 Fedora)上,以下步骤应该足以获取必要的额外依赖项:

$  sudo  dnf  install  atlas-devel  gcc-c++  gcc-gfortran  libgfortran  python-devel  redhat-rpm-config  hdf5 

Arch Linux上,您可以通过pacman获取额外的依赖项:

$  pacman  -S  lapack  gcc  gcc-fortran  pkg-config  hdf5 

也有 AUR 包可用于安装ta-lib。Python 3 也可以通过以下方式安装:

$  pacman  -S  python3 
编译 TA-Lib

您还需要编译TA-Lib技术分析库,以便其头文件可用。

您可以按照以下步骤操作:

$  wget  http://prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-src.tar.gz
$  tar  -xzf  ta-lib-0.4.0-src.tar.gz
$  cd  ta-lib/
$  sudo  ./configure
$  sudo  make
$  sudo  make  install 

这将允许您按照二进制轮子的预期使用pip安装 Python 包装器。

macOS

macOS 随附的 Python 版本通常已过时,并且由于操作系统直接使用它而存在一些怪癖。出于这些原因,许多开发人员选择安装并使用单独的 Python 安装。

Python 漫游指南提供了在 macOS 上安装 Python的优秀指南,解释了如何使用Homebrew管理器安装 Python。或者,您可以使用pyenv

假设您已使用brew安装了 Python,您可能还需要以下包:

$  brew  install  freetype  pkg-config  gcc  openssl  hdf5  ta-lib 

Windows

对于 Windows,安装 Zipline 最简单且最支持的方法是使用conda

使用conda安装

另一种安装 Zipline 的方法是通过conda包管理器,该管理器包含在Anaconda发行版中。或者,您可以使用相关但更轻量级的MinicondaMiniforge安装程序。

使用 Conda 而非pip的主要优势在于,conda原生理解numpyscipy等包的复杂二进制依赖关系。这意味着conda可以安装 Zipline 及其依赖项,而无需使用第二个工具来获取 Zipline 的非 Python 依赖项。

有关如何安装conda的说明,请参阅Conda 安装文档

一旦设置了conda,您就可以从conda-forge频道安装 Zipline。

有关最新安装详细信息,请参见此处

管理conda环境

建议在隔离的conda环境中安装 Zipline。在conda环境中安装 Zipline 不会干扰您的默认 Python 部署或 site-packages,这将防止与您的全局库发生任何可能的冲突。有关conda环境的更多信息,请参阅Conda 用户指南

假设已经设置了conda,您可以创建一个conda环境:

$  conda  create  -n  env_zipline  python=3.10 

现在,您已经设置了一个名为env_zipline的隔离环境,这是一个类似沙箱的结构,用于安装 Zipline。然后,您应该通过使用以下命令来激活 conda 环境:

$  conda  activate  env_zipline 

您可以通过运行以下命令来安装 Zipline:

(env_zipline)  $  conda  install  -c  ml4t  zipline-reloaded 

要停用conda环境:

(env_zipline)  $  conda  deactivate 

注意

conda activateconda deactivate 仅适用于 conda 4.6 及更高版本。对于 conda 4.6 之前的版本,请运行:

  • Windows: activatedeactivate

  • Linux 和 macOS: source activatesource deactivate ### 管理conda环境

建议在隔离的conda环境中安装 Zipline。在conda环境中安装 Zipline 不会干扰您的默认 Python 部署或 site-packages,这将防止与您的全局库发生任何可能的冲突。有关conda环境的更多信息,请参阅Conda 用户指南

假设已经设置了conda,您可以创建一个conda环境:

$  conda  create  -n  env_zipline  python=3.10 

现在,您已经设置了一个名为env_zipline的隔离环境,这是一个类似沙箱的结构,用于安装 Zipline。然后,您应该通过使用以下命令来激活 conda 环境:

$  conda  activate  env_zipline 

您可以通过运行以下命令来安装 Zipline:

(env_zipline)  $  conda  install  -c  ml4t  zipline-reloaded 

要停用 conda 环境:

(env_zipline)  $  conda  deactivate 

注意

conda activateconda deactivate 仅适用于 conda 4.6 及更高版本。对于 conda 4.6 之前的版本,请运行:

  • Windows:activatedeactivate

  • Linux 和 macOS:source activatesource deactivate

教程

原文:zipline.ml4trading.io/beginner-tutorial.html

Zipline 是一个用 Python 编写的 开源 算法交易模拟器。

一些好处包括:

  • 真实:滑点、交易成本、订单延迟。
  • 基于流:逐个处理每个事件,避免前瞻性偏差。
  • 包含电池:常见的转换(移动平均线)以及常见的风险计算(夏普比率)可以在执行回测时高效计算。

本教程假设您已正确安装 Zipline,如果您尚未完成,请参阅 安装 说明。

如何构建算法

每个 Zipline 算法都由您必须定义的两个函数组成:

  • initialize(context)
  • handle_data(context, data)

在算法开始之前,Zipline 调用 initialize() 函数并传入一个 context 变量。context 是一个持久的命名空间,用于存储您需要从一个算法迭代到下一个迭代访问的变量。

算法初始化后,Zipline 为每个事件调用 handle_data() 函数一次。在每次调用时,它传递相同的 context 变量和一个名为 data 的事件帧,其中包含当前交易栏的开盘、最高、最低和收盘(OHLC)价格以及您投资组合中每只股票的成交量。

一个简单的例子

让我们来看一个来自 zipline/examples 目录的非常简单的算法,buyapple.py。每个周期,即一个交易日,它订购 10 股苹果股票并记录价格。

from zipline.examples import buyapple 
from zipline.api import order, record, symbol
def initialize(context):
    pass
def handle_data(context, data):
    order(symbol('AAPL'), 10)
    record(AAPL=data.current(symbol('AAPL'), 'price')) 

如您所见,我们首先必须导入一些我们想要使用的函数。所有在您的算法中常用的函数都可以在 zipline.api 中找到。这里我们使用 order(),它接受两个参数:一个证券对象和一个指定您想要订购多少股票的数字(如果是负数,order() 将卖出/做空股票)。在这种情况下,我们希望在每次迭代中订购 10 股苹果股票。

最后,record() 函数允许您在每次迭代时保存变量的值。您向其提供变量的名称以及变量本身:varname=var。算法运行完成后,您将能够访问您使用 record() 跟踪的每个变量值,并使用您提供的名称(我们将在下面进一步看到)。您还可以看到我们如何访问 AAPL 股票在 data 事件帧中的当前价格数据。

如何运行算法

现在,要在金融数据上测试此算法,Zipline 提供了三种接口:1. 通过 zipline 命令的命令行,2. 通过 zipline 魔法在 Jupyter Notebook 中,3. 通过 run_algorithm() 执行你的算法,就像任何 Python 脚本一样,例如在你的 IDE 中。

在我们运行任何算法之前,我们需要一些数据。

数据摄取

如果你还没有摄取数据,那么运行:

$  zipline  ingest  -b  <bundle> 

其中 是你要摄取的 bundle 的名称。目前你可以使用默认的 quandl 来处理 Quandl WIKI 价格数据。有关如何获取其他新数据的更多详细信息,请查看 数据摄取 部分。

命令行界面

安装 Zipline 后,你应该能够从命令行执行以下操作(例如在 Windows 上的 cmd.exe,在 OSX 上的终端应用程序,或在 Linux 上的 bash shell):

$  zipline  run  --help 
Usage: zipline run [OPTIONS]
Run a backtest for the given algorithm.
Options:
 -f, --algofile FILENAME         The file that contains the algorithm to run.
 -t, --algotext TEXT             The algorithm script to run.
 -D, --define TEXT               Define a name to be bound in the namespace
                                 before executing the algotext. For example
                                 '-Dname=value'. The value may be any python
                                 expression. These are evaluated in order so
                                 they may refer to previously defined names.
 --data-frequency [daily|minute]
                                 The data frequency of the simulation.
                                 [default: daily]
 --capital-base FLOAT            The starting capital for the simulation.
                                 [default: 10000000.0]
 -b, --bundle BUNDLE-NAME        The data bundle to use for the simulation.
                                 [default: quandl]
 --bundle-timestamp TIMESTAMP    The date to lookup data on or before.
                                 [default: <current-time>]
 -s, --start DATE                The start date of the simulation.
 -e, --end DATE                  The end date of the simulation.
 -o, --output FILENAME           The location to write the perf data. If this
                                 is '-' the perf will be written to stdout.
                                 [default: -]
 --trading-calendar TRADING-CALENDAR
                                 The calendar you want to use e.g. LSE. NYSE
                                 is the default.
 --print-algo / --no-print-algo  Print the algorithm to stdout.
 --benchmark-file                The csv file that contains the benchmark
                                 returns (date, returns columns)
 --benchmark-symbol              The instrument's symbol to be used as
                                 a benchmark.
                                 (should exist in the ingested bundle)
 --benchmark-sid                 The sid of the instrument to be used as a
                                 benchmark.
                                 (should exist in the ingested bundle)
 --no-benchmark                  This flag is used to set the benchmark to
                                 zero. Alpha, beta and benchmark metrics
                                 are not calculated
 --help                          Show this message and exit. 

如你所见,有一些标志指定了算法的位置(-f),以及指定使用哪些数据的参数,默认为 quandl

对于运行算法的日期范围(--start--end)也存在一些争议。要使用基准测试,你需要在前面列出的基准选项中选择一个。你始终可以使用不使用基准的选项(--no-benchmark),在这种情况下,将零回报作为基准(此时不计算 alpha、beta 和基准指标)。

最后,你会想要保存算法的性能指标,以便你可以分析它的表现。这是通过 --output 标志完成的,它将导致它将性能 DataFrame 写入 pickle Python 文件格式。请注意,你还可以定义一个配置文件,其中包含这些参数,然后你可以方便地将其传递给 -c 选项,这样你就不必每次都提供命令行参数了(请参见示例目录中的 .conf 文件)。

因此,要执行上述算法并将结果保存到 buyapple_out.pickle,我们按如下方式调用 zipline run

zipline  run  -f  ../zipline/examples/buyapple.py  --start  2016-1-1  --end  2018-1-1  -o  buyapple_out.pickle  --no-benchmark 
AAPL
[2018-01-03 04:30:51.843465] INFO: Performance: Simulated 503 trading days out of 503.
[2018-01-03 04:30:51.843598] INFO: Performance: first open: 2016-01-04 14:31:00+00:00
[2018-01-03 04:30:51.843672] INFO: Performance: last close: 2017-12-29 21:00:00+00:00 

run 首先调用 initialize() 函数,然后逐日流式传输历史股票价格通过 handle_data()。在每次调用 handle_data() 后,我们指示 zipline 订购 10 股 AAPL。在调用 order() 函数后,zipline 将订购的股票和数量输入订单簿。在 handle_data() 函数完成后,zipline 查找任何未完成的订单并尝试填充它们。如果该股票的交易量足够大,订单将在添加佣金并应用滑点模型后执行,该模型模拟了你的订单对股票价格的影响,因此你的算法将被收取比股票价格 * 10 更多的费用。(注意,你也可以更改 zipline 使用的佣金和滑点模型,请参见。

让我们快速查看一下性能DataFrame。为此,我们在 IPython Notebook 中使用pandas并打印前 10 行。请注意,zipline大量使用pandas,尤其是在数据输入和输出方面,因此值得花时间学习它。

import pandas as pd
perf = pd.read_pickle('buyapple_out.pickle') # read in perf DataFrame
perf.head() 
AAPL algo_volatility algorithm_period_return alpha benchmark_period_return benchmark_volatility beta capital_used ending_cash ending_exposure ending_value excess_return gross_leverage long_exposure long_value longs_count max_drawdown max_leverage net_leverage orders period_close period_label period_open pnl portfolio_value positions returns sharpe short_exposure short_value shorts_count sortino starting_cash starting_exposure starting_value trading_days transactions treasury_period_return
2016-01-04 21:00:00+00:00 105.35 NaN 0.000000e+00 NaN -0.013983 NaN NaN 0.0 10000000.0 0.0 0.0 0.0 0.000000 0.0 0.0 0 0.000000e+00 0.0 0.000000 [{‘dt’: 2016-01-04 21:00:00+00:00, ‘reason’: N… 2016-01-04 21:00:00+00:00 2016-01 2016-01-04 14:31:00+00:00 0.0 10000000.0 [] 0.000000e+00 NaN 0 0 0 NaN 10000000.0 0.0 0.0 1 [] 0.0
2016-01-05 21:00:00+00:00 102.71 0.000001 -1.000000e-07 -0.000022 -0.012312 0.175994 -0.000006 -1028.1 9998971.9 1027.1 1027.1 0.0 0.000103 1027.1 1027.1 1 -1.000000e-07 0.0 0.000103 [{‘dt’: 2016-01-05 21:00:00+00:00, ‘reason’: N… 2016-01-05 21:00:00+00:00 2016-01 2016-01-05 14:31:00+00:00 -1.0 9999999.0 [{‘sid’: Equity(8 [AAPL]), ‘last_sale_price’: … -1.000000e-07 -11.224972 0 0 0 -11.224972 10000000.0 0.0 0.0 2 [{‘order_id’: '4011063b5c094e82a5391527044098b… 0.0
2016-01-06 21:00:00+00:00 100.70 0.000019 -2.210000e-06 -0.000073 -0.024771 0.137853 0.000054 -1008.0 9997963.9 2014.0 2014.0 0.0 0.000201 2014.0 2014.0 1 -2.210000e-06 0.0 0.000201 [{‘dt’: 2016-01-06 21:00:00+00:00, ‘reason’: N… 2016-01-06 21:00:00+00:00 2016-01 2016-01-06 14:31:00+00:00 -21.1 9999977.9 [{‘sid’: Equity(8 [AAPL]), ‘last_sale_price’: … -2.110000e-06 -9.823839 0 0 0 -9.588756 9998971.9 1027.1 1027.1 3 [{‘order_id’: '3bf9fe20cc46468d99f741474226c03… 0.0
2016-01-07 21:00:00+00:00 96.45 0.000064 -1.081000e-05 0.000243 -0.048168 0.167868 0.000300 -965.5 9996998.4 2893.5 2893.5 0.0 0.000289 2893.5 2893.5 1 -1.081000e-05 0.0 0.000289 [{‘dt’: 2016-01-07 21:00:00+00:00, ‘reason’: N… 2016-01-07 21:00:00+00:00 2016-01 2016-01-07 14:31:00+00:00 -86.0 9999891.9 [{‘sid’: Equity(8 [AAPL]), ‘last_sale_price’: … -8.600019e-06 -10.592737 0 0 0 -9.688947 9997963.9 2014.0 2014.0 4 [{‘order_id’: '6af6aed9fbb44a6bba17e802051b94d… 0.0
2016-01-08 21:00:00+00:00 96.96 0.000063 -9.380000e-06 0.000466 -0.058601 0.145654 0.000311 -970.6 9996027.8 3878.4 3878.4 0.0 0.000388 3878.4 3878.4 1 -1.081000e-05 0.0 0.000388 [{‘dt’: 2016-01-08 21:00:00+00:00, ‘reason’: N… 2016-01-08 21:00:00+00:00 2016-01 2016-01-08 14:31:00+00:00 14.3 9999906.2 [{‘sid’: Equity(8 [AAPL]), ‘last_sale_price’: … 1.430015e-06 -7.511729 0 0 0 -7.519659 9996998.4 2893.5 2893.5 5 {‘order_id’: '18f64975732449a18fca06e9c69bf5c… 0.0

如你所见,每个交易日都有一行,从 2016 年的第一个工作日开始。在列中,你可以找到有关你的算法状态的各种信息。第一列AAPL是由前面提到的record()函数放置在那里的,它允许我们绘制苹果的价格。例如,我们现在可以很容易地检查我们的投资组合价值如何随时间变化,与 AAPL 股票价格相比。

%pylab inline
figsize(12, 12)
import matplotlib.pyplot as plt
ax1 = plt.subplot(211)
perf.portfolio_value.plot(ax=ax1)
ax1.set_ylabel('Portfolio Value')
ax2 = plt.subplot(212, sharex=ax1)
perf.AAPL.plot(ax=ax2)
ax2.set_ylabel('AAPL Stock Price') 
Populating the interactive namespace from numpy and matplotlib 
<matplotlib.text.Text at 0x10c48c198> 

![_images/tutorial_11_2.png

如你所见,我们的算法表现,通过portfolio_value评估,与 AAPL 股票价格紧密匹配。这并不奇怪,因为我们的算法只要有机会就会买入 AAPL。

Jupyter Notebook

Jupyter Notebook是一个非常强大的基于浏览器的 Python 解释器界面(本教程就是在其中编写的)。由于它是许多量化研究人员非常流行的界面,Zipline 提供了一种简单的方法,可以在不要求你使用 CLI 的情况下在 Notebook 内运行你的算法。

要使用它,你需要在一个单元格中编写你的算法,并让 Zipline 知道它应该运行这个算法。这是通过%%zipline IPython 魔术命令完成的,该命令在你从 IPython Notebook 中import zipline后可用。这个魔术命令接受与上述命令行界面相同的参数。因此,要使用相同的参数运行上述算法,我们只需在导入zipline后执行以下单元格来注册魔术命令。

%load_ext zipline 
%%zipline --start 2016-1-1 --end 2018-1-1
from zipline.api import symbol, order, record
def initialize(context):
    pass
def handle_data(context, data):
    order(symbol('AAPL'), 10)
    record(AAPL=data.current(symbol('AAPL'), "price") 

注意,我们不需要像上面那样指定输入文件,因为魔术将使用单元格的内容并在那里查找您的算法函数。此外,我们没有定义输出文件,而是使用-o指定了一个变量名,该变量名将在名称空间中创建,并包含我们在上面查看的性能DataFrame

_.head() 
AAPL algo_volatility algorithm_period_return alpha benchmark_period_return benchmark_volatility beta capital_used ending_cash ending_exposure ending_value excess_return gross_leverage long_exposure long_value longs_count max_drawdown max_leverage net_leverage orders period_close period_label period_open pnl portfolio_value positions returns sharpe short_exposure short_value shorts_count sortino starting_cash starting_exposure starting_value trading_days transactions treasury_period_return
2016-01-04 21:00:00+00:00 105.35 NaN 0.000000e+00 NaN -0.013983 NaN NaN 0.00 10000000.00 0.0 0.0 0.0 0.000000 0.0 0.0 0 0.000000e+00 0.0 0.000000 [{‘created’: 2016-01-04 21:00:00+00:00, 'reaso… 2016-01-04 21:00:00+00:00 2016-01 2016-01-04 14:31:00+00:00 0.00 10000000.00 [] 0.000000e+00 NaN 0 0 0 NaN 10000000.00 0.0 0.0 1 [] 0.0
2016-01-05 21:00:00+00:00 102.71 1.122497e-08 -1.000000e-09 -2.247510e-07 -0.012312 0.175994 -6.378047e-08 -1027.11 9998972.89 1027.1 1027.1 0.0 0.000103 1027.1 1027.1 1 -9.999999e-10 0.0 0.000103 {‘created’: 2016-01-04 21:00:00+00:00, 'reaso… 2016-01-05 21:00:00+00:00 2016-01 2016-01-05 14:31:00+00:00 -0.01 9999999.99 [{‘amount’: 10, ‘cost_basis’: 102.711000000000… -1.000000e-09 -11.224972 0 0 0 -11.224972 10000000.00 0.0 0.0 2 [{‘dt’: 2016-01-05 21:00:00+00:00, ‘order_id’:… 0.0
2016-01-06 21:00:00+00:00 100.70 1.842654e-05 -2.012000e-06 -4.883861e-05 -0.024771 0.137853 5.744807e-05 -1007.01 9997965.88 2014.0 2014.0 0.0 0.000201 2014.0 2014.0 1 -2.012000e-06 0.0 0.000201 [{‘created’: 2016-01-05 21:00:00+00:00, 'reaso… 2016-01-06 21:00:00+00:00 2016-01 2016-01-06 14:31:00+00:00 -20.11 9999979.88 [{‘amount’: 20, ‘cost_basis’: 101.706000000000… -2.011000e-06 -9.171989 0 0 0 -9.169708 9998972.89 1027.1 1027.1 3 [{‘dt’: 2016-01-06 21:00:00+00:00, ‘order_id’:… 0.0
2016-01-07 21:00:00+00:00 96.45 6.394658e-05 -1.051300e-05 2.633450e-04 -0.048168 0.167868 3.005102e-04 -964.51 9997001.37 2893.5 2893.5 0.0 0.000289 2893.5 2893.5 1 -1.051300e-05 0.0 0.000289 [{‘created’: 2016-01-06 21:00:00+00:00, 'reaso… 2016-01-07 21:00:00+00:00 2016-01 2016-01-07 14:31:00+00:00 -85.01 9999894.87 [{‘amount’: 30, ‘cost_basis’: 99.9543333333335… -8.501017e-06 -10.357397 0 0 0 -9.552189 9997965.88 2014.0 2014.0 4 [{‘dt’: 2016-01-07 21:00:00+00:00, ‘order_id’:… 0.0
2016-01-08 21:00:00+00:00 96.96 6.275294e-05 -8.984000e-06 4.879306e-04 -0.058601 0.145654 3.118401e-04 -969.61 9996031.76 3878.4 3878.4 0.0 0.000388 3878.4 3878.4 1 -1.051300e-05 0.0 0.000388 [{‘created’: 2016-01-07 21:00:00+00:00, 'reaso… 2016-01-08 21:00:00+00:00 2016-01 2016-01-08 14:31:00+00:00 15.29 9999910.16 [{‘amount’: 40, ‘cost_basis’: 99.2060000000002… 1.529016e-06 -7.215497 0 0 0 -7.301134 9997001.37 2893.5 2893.5 5 [{‘dt’: 2016-01-08 21:00:00+00:00, ‘order_id’:… 0.0

IDE 通过[run_algorithm()

要在您喜欢的 IDE 中执行类似于 Python 脚本的算法,请使用run_algorithm()(参见 API 参考)。

要调整上述buyapple.py示例(参见同一目录中的buyapple_ide.py),只需添加以下内容:

from zipline import run_algorithm
import pandas as pd
import pandas_datareader.data as web
def initialize(context):
    ...
def handle_data(context, data):
    ...
start = pd.Timestamp('2014')
end = pd.Timestamp('2018')
sp500 = web.DataReader('SP500', 'fred', start, end).SP500
benchmark_returns = sp500.pct_change()
result = run_algorithm(start=start.tz_localize('UTC'),
                       end=end.tz_localize('UTC'),
                       initialize=initialize,
                       handle_data=handle_data,
                       capital_base=100000,
                       benchmark_returns=benchmark_returns,
                       bundle='quandl',
                       data_frequency='daily') 

我们将关键算法参数传递给run_algorithm(),包括我们从联邦储备经济数据服务(过去 10 年可用)下载的 S&P 500 的一些基准数据。

返回的result值包含与前一个示例相同的DataFrame。您可以对DataFrame应用您喜欢的逻辑,而不是将analyze()函数定义为算法的一部分。

Zipline 3.0 中文文档(一)(3)https://developer.aliyun.com/article/1523877

相关文章
|
4月前
|
SQL 关系型数据库 数据库
SqlAlchemy 2.0 中文文档(八十)(1)
SqlAlchemy 2.0 中文文档(八十)
31 1
|
4月前
|
SQL API 数据库
SqlAlchemy 2.0 中文文档(八十)(5)
SqlAlchemy 2.0 中文文档(八十)
35 0
|
6月前
|
存储 算法 Shell
Zipline 3.0 中文文档(一)(3)
Zipline 3.0 中文文档(一)
158 6
|
6月前
|
算法 Linux iOS开发
Zipline 3.0 中文文档(一)(1)
Zipline 3.0 中文文档(一)
270 3
|
6月前
|
算法 IDE API
Zipline 3.0 中文文档(一)(4)
Zipline 3.0 中文文档(一)
90 3
|
6月前
|
算法 安全 API
Zipline 3.0 中文文档(二)(2)
Zipline 3.0 中文文档(二)
84 3
|
6月前
|
算法 API 索引
Zipline 3.0 中文文档(二)(5)
Zipline 3.0 中文文档(二)
75 2
|
4月前
|
自然语言处理 PyTorch 算法框架/工具
Transformers 4.37 中文文档(三十三)4-37-中文文档-三十三-(2)
Transformers 4.37 中文文档(三十三)4-37-中文文档-三十三-
40 0
|
4月前
|
自然语言处理 PyTorch 算法框架/工具
Transformers 4.37 中文文档(三十三)4-37-中文文档-三十三-(4)
Transformers 4.37 中文文档(三十三)4-37-中文文档-三十三-
26 0
|
4月前
|
自然语言处理 PyTorch API
Transformers 4.37 中文文档(三十三)4-37-中文文档-三十三-(1)
Transformers 4.37 中文文档(三十三)4-37-中文文档-三十三-
44 0