问题列表 - 第317998页

运行时错误:库 libcublas.so.11 未找到或无法加载

我正在使用 V100 GPU、高 RAM 模式在 google colab 上开发一个 LLM 项目,这些是我的依赖项:

git+https://github.com/pyannote/pyannote-audio
git+https://github.com/huggingface/transformers.git@v4.34.1
openai==0.28
ffmpeg-python
pandas==1.5.0
tokenizers==0.14
torch==2.1.1
torchaudio==2.1.1
tqdm==4.64.1
EasyNMT==2.0.2
psutil==5.9.2
requests
pydub
docxtpl
faster-whisper==0.10.0
git+https://github.com/openai/whisper.git
Run Code Online (Sandbox Code Playgroud)

这是我导入的所有内容:

from faster_whisper import WhisperModel
from datetime import datetime, timedelta
from time import time
from pathlib import Path
import pandas as pd
import os
from pydub import AudioSegment
import numpy as np
from sklearn.cluster import AgglomerativeClustering
from sklearn.metrics import silhouette_score

import requests

import torch
import pyannote.audio
from pyannote.audio.pipelines.speaker_verification import PretrainedSpeakerEmbedding
from pyannote.audio import Audio …
Run Code Online (Sandbox Code Playgroud)

python pytorch google-colaboratory openai-whisper large-language-model

1
推荐指数
1
解决办法
1999
查看次数

ValueError:无效模式:“**”只能是整个路径组件

我正在尝试微调 LLM

到目前为止我的代码:

from datasets import load_dataset, DatasetDict, Dataset

from transformers import (
    AutoTokenizer,
    AutoConfig, 
    AutoModelForSequenceClassification,
    DataCollatorWithPadding,
    TrainingArguments,
        Trainer)

from peft import PeftModel, PeftConfig, get_peft_model, LoraConfig
import evaluate
import torch
import numpy as np

# load dataset
dataset = load_dataset('TokenBender/code_instructions_122k_alpaca_style')
dataset
Run Code Online (Sandbox Code Playgroud)

错误:

    ---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Cell In [12], line 2
      1 # load dataset
----> 2 dataset = load_dataset('TokenBender/code_instructions_122k_alpaca_style')
      3 dataset

File /usr/local/lib/python3.9/dist-packages/datasets/load.py:1664, in load_dataset(path, name, data_dir, data_files, split, cache_dir, features, download_config, download_mode, ignore_verifications, keep_in_memory, save_infos, …
Run Code Online (Sandbox Code Playgroud)

python huggingface-datasets large-language-model

7
推荐指数
1
解决办法
4442
查看次数

C++23 悬空引用编译错误

以下显然会导致 C++23 中的编译错误:

int& f(int& x) {
    int y = ++x;
    return y;
}
Run Code Online (Sandbox Code Playgroud)

错误:cannot bind non-const lvalue reference of type 'int&' to an rvalue of type 'int'

但这似乎没有给我们一个警告:

int& f(int x) {
    int &y = ++x;
    return y;
}
Run Code Online (Sandbox Code Playgroud)

这在编译阶段是不是更难捕捉?

谢谢。

c++ reference c++23

2
推荐指数
1
解决办法
176
查看次数

使用带有布尔子集的“<-”时如何创建不存在的列?

考虑这个数据框。

> (df <- data.frame(x=c(1, 2, NA, NA)))
   x
1  1
2  2
3 NA
4 NA
Run Code Online (Sandbox Code Playgroud)

这里如何创建不存在的foo列?

> `<-`(df$foo[!is.na(df$x)], 999)
> df
   x foo
1  1 999
2  2 999
3 NA  NA
4 NA  NA
Run Code Online (Sandbox Code Playgroud)

我在使用时需要先初始化它within。

> df <- data.frame(x=c(1, 2, NA, NA))
> df |> within(foo[!is.na(x)] <- 999)
Error: object 'foo' not found
> df |> within({foo <- NA_real_; foo[!is.na(x)] <- 999})
   x foo
1  1 999
2  2 999
3 NA  NA
4 …
Run Code Online (Sandbox Code Playgroud)

r

5
推荐指数
1
解决办法
117
查看次数

是否可以恢复“std::span”中元素的实际索引?

我有一个带有成员变量的类std::vector。我还有一个成员函数,它采用std::vector由两个size_t参数指定的连续范围,并对其执行一些操作。

class MyClass {
    std::vector<int> objects;

public:

    void func(size_t start_index, size_t end_index); 
}
Run Code Online (Sandbox Code Playgroud)

现在,我想size_t用单个参数替换两个std::span参数,以提高安全性、可读性和可维护性。然而,有一个障碍:在我的函数中,我需要能够恢复原始std::vector. 就像这样,我需要能够找到std::span原始数组中的开始位置。有没有办法做到这一点?如果没有,那么我是否别无选择,只能使用我原来笨重的设计?

objects.begin()(我最初尝试通过从我拥有的参数begin()的迭代器中减去来恢复第一个索引std::span,但这导致了编译错误。)

c++ stdvector c++20 std-span

2
推荐指数
1
解决办法
94
查看次数

用 R 转换抽象语法树

例如,给定一个算术表达式,x + y*z我想将其转换为add(x, multiply(y, z)).

我在这里发现了一个有用的功能:

> getAST <- function(ee) purrr::map_if(as.list(ee), is.call, getAST)
> getAST(quote(x + y*z)) 
[[1]]
`+`

[[2]]
x

[[3]]
[[3]][[1]]
`*`

[[3]][[2]]
y

[[3]][[3]]
z
Run Code Online (Sandbox Code Playgroud)

可以使用它rapply(result, as.character, how = "list")来获取字符而不是符号。

如何从这个 AST 中得到add(x, multiply(y, z))(结果)?当有一些括号时,这会变得更加复杂:

> getAST(quote((x + y) * z)) 
[[1]]
`*`

[[2]]
[[2]][[1]]
`(`

[[2]][[2]]
[[2]][[2]][[1]]
`+`

[[2]][[2]][[2]]
x

[[2]][[2]][[3]]
y



[[3]]
z
Run Code Online (Sandbox Code Playgroud)

我不要求答案必须使用该getAST功能。这只是一种可行的方法。

当然,在我的实际用例中,表达式更长。


这是没有括号时的情况的解决方案(我认为):

getAST <- function(ee) purrr::map_if(as.list(ee), is.call, getAST)

ast …
Run Code Online (Sandbox Code Playgroud)

r arithmetic-expressions symbolic-math abstract-syntax-tree

5
推荐指数
1
解决办法
86
查看次数

从给定的行中,如何选择 R 中的前“n”行?

我有一个虚拟变量,如下所示:

df <- data.frame(year = seq(1990, 1997, 1),
                 x = c(1, 0, 0, 0, 1, 1, 0, 0))

year  x
1990  1
1991  0
1992  0
1993  0
1994  1
1995  1
1996  0
1997  0
Run Code Online (Sandbox Code Playgroud)

如果前三年中任何一年的值非零,我想创建一个y等于的虚拟值。预期结果:1x

year  x   y
1990  1  NA
1991  0  NA
1992  0   1
1993  0   0
1994  1   1
1995  1   1
1996  0   1
1997  0   1
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?dplyr优选解决方案。

variables r dplyr data-cleaning tidyverse

5
推荐指数
2
解决办法
105
查看次数

连接向量范围并没有给出范围

我正在尝试对笛卡尔积进行变换,最终使边缘变平。我收到的结果不是范围,这就是问题所在:

#include <ranges>
#include <vector>
#include <iostream>
#include <tuple>
#include <iterator>

int main() {
    auto indicies = std::views::iota(0, 3);

    auto coords = std::views::cartesian_product(indicies, indicies);

    auto edges = coords | std::views::transform([](const auto& coord) {
        using Coord = std::pair<std::size_t, std::size_t>;
        using Edge = std::pair<Coord, Coord>;
        std::vector<Edge> ret;
        const auto& [x, y] = coord;
        auto curr = Coord{x, y};
        if (x + 1 < 3) {
            auto dest = Coord{x + 1, y};
            ret.emplace_back(curr, dest);
        }
        if (y + 1 < 3) { …
Run Code Online (Sandbox Code Playgroud)

c++ gcc std-ranges c++23

1
推荐指数
1
解决办法
81
查看次数

调试器检查卡在 Android Studio Hedgehog 中的评估上

我正在使用 Android Studio 开发 Android 应用程序,几乎每当我尝试检查变量时,调试器都会卡在“评估”上。

我怀疑这是在尝试调试后台任务时发生的(这也是无意义的),但事实是现在我正在尝试调试和检查主线程中的变量,所以现在是我被卡住了。

我尝试了 Stack Overflow 上找到的一些解决方案,但没有成功,如下所示:

IntelliJ IDEA 在调试时停留在“收集数据”

正如帖子所建议的那样,我刚刚在设置中禁用了“启用集合类的替代视图”,但什么也没发生。

我怎样才能恢复正确调试和检查变量的能力?

调试

debugging android watch android-studio

6
推荐指数
1
解决办法
350
查看次数

为什么我的静态记录器上会收到死代码警告

我正在尝试按照日志文档来实现记录器。我有以下代码:

记录器.rs

use std::sync::OnceLock;

static LOGGER: OnceLock<Logger> = OnceLock::new();

struct Logger {
    level: log::Level,
}

pub fn init(level: log::Level) {
    if let Ok(_) = LOGGER.set(Logger { level }) {
        log::set_logger(LOGGER.get().unwrap()).unwrap();
        log::set_max_level(level.to_level_filter());
    }
}

impl log::Log for Logger {
    fn enabled(&self, metadata: &log::Metadata) -> bool {
        metadata.level() <= self.level
    }

    fn log(&self, record: &log::Record) {
        if self.enabled(record.metadata()) {
            eprintln!("{}: {}", record.level(), record.args());
        }
    }

    fn flush(&self) {}
}
Run Code Online (Sandbox Code Playgroud)

库文件

use log::info;

mod logger;

pub fn run(loglevel: log::Level) {
    logger::init(loglevel); …
Run Code Online (Sandbox Code Playgroud)

rust

0
推荐指数
1
解决办法
48
查看次数