当前位置: 首页 > 知识库问答 >
问题:

用uvicorn重新加载标志:我们可以排除某些代码吗?

伯建安
2023-03-14

当用--reload标志重新加载脚本时,是否可以排除代码的某些部分?

uvicorn main:app --reload

用例:我有一个需要花费大量时间加载的模型,所以我想知道是否有一种方法可以在重新加载时忽略这行代码。还是根本不可能?

共有2个答案

汪欣德
2023-03-14

我认为这是不可能的,当服务器重新加载时,它会从头开始将所有需要的文件加载到内存中。它没有保留上次发布的记忆。

穆高澹
2023-03-14

最新消息

Uvicorn现在支持包含/排除某些目录/文件到/从监视列表。

  --reload-include TEXT           Set glob patterns to include while watching
                                  for files. Includes '*.py' by default, which
                                  can be overridden in reload-excludes.
  --reload-exclude TEXT           Set glob patterns to exclude while watching
                                  for files. Includes '.*, .py[cod], .sw.*,
                                  ~*' by default, which can be overridden in
                                  reload-excludes.

不,没有办法排除某些东西,但是你可以通过--reload-dir标记显式地显示你想要查看的内容:

  --reload-dir TEXT               Set reload directories explicitly, instead
                                  of using the current working directory.

在https://www.uvicorn.org/#command-line-options

 类似资料:
  • 我想通过在动词前加一个“X”来标记动词在句子中的位置。我的函数采取以下步骤来实现这一点。 找到动词。我使用spaCy进行POS标记。SpaCy输出一个我称之为的POS标签列表,其中句子中的每个单词都表示为一个标签。 将句子也转换为列表。 确定POS列表中动词标签(例如)的索引。 在索引处插入所需的“X”标记到句子列表中。 第4步假设列表的长度与句子列表的长度相同。通常情况下是这样的,除非spaCy

  • 问题内容: 我正在通过puppeteer将文件下载到我的目录中。我需要将此文件上传到s3存储桶,因此我需要选择文件名。但是问题是,此文件名的时间戳每次都会更改,因此我无法保留硬编码名称。那么有没有办法解决这个问题,以便每次都获得一个常量名称(即使替换了旧文件),或者如何重命名正在下载的文件? 我想到了使用节点的fs.rename()函数,但这又需要当前的文件名。 我想要一个恒定的文件名来进行硬编码

  • 问题内容: 是否可以将Oracle JDK随附的 tools.jar 与依赖于它的商业产品一起分发(即,根据Oracle许可条款,在法律上)?是或否,请提供参考以证实您的答案。 问题答案: 根据我的阅读,是的,但有一些警告: 您必须仅通过“ javac字节码编译器”(包括tools.jar;)重新分发整个Oracle JDK或整个JRE。允许重新分发与您的应用程序捆绑在一起。 重新分发的JDK或J

  • 问题内容: 我知道Python提供了API,因此您可以在C代码中调用Python解释器,但是我想要的却是相反的。 我的程序需要使用一些C API,所以代码必须用C编写。但是我也想用Python打包程序。这意味着我想在Python中调用这些C函数或可执行文件。那可能吗? 如果我希望C代码成为一个库,这意味着我将它与Python 中的可能的链接一起使用,该怎么做?那可能吗?如果我将C代码写入可执行文件

  • 问题内容: 我们可以重载Java中的方法吗? 问题答案: 您 可以 重载该方法,但仅在JVM启动您的类时使用。例如: 从命令行运行时,即使指定一个或两个命令行参数,该命令也 始终会 打印。 当然,您可以从代码中自己调用该方法-此时将应用常规的重载规则。 编辑:请注意,您可以使用varargs签名,因为从JVM的角度来看,这是等效的:

  • 问题内容: 我知道我们可以重载类实例的行为,例如- 我们可以更改的结果print s: 我们可以更改结果print Sample吗? 问题答案: 您可以使用元类: Python 3: Python 2: 输出: 元类是类的类。它与类的关系类似于类与实例的关系。使用相同的class语句。type而是从继承表单object使其成为一个元类。按惯例self由代替cls。

  • 目前,随着GCC、Clang和Microsoft的实现,新标准库文件的初始版本已经开始发布,并且在Boost库中已经有很多标准库的组件可用。(注:Boost库是一个可移植、开放源码的C++库,作为标准库的后备,是C++标准化进程的发动机之一。) (翻译:Chilli)

  • 问题内容: 如标题所述,我想基于仅在运行时可用的信息来动态加载(或不)动态加载Go软件包。 目的是允许用户通过添加新的本机脚本命令的自定义程序包扩展程序。当前,每次我添加新命令或禁止使用某些命令时,都需要编辑程序并重新编译,而如果我可以制作某种dll之类的文件,则可以创建一个“导入”脚本命令来搜索和加载命名命令库。 出于好奇,该程序是基于定制命令的脚本库,我将其用于各种用途。 我提前进行了一些搜索