#c #pytorch #libtorch
#c #pytorch #libtorch
Вопрос:
Я работаю над расширением cpp для pytorch и следовал официальному руководству, используя libtorch и cmake для компиляции программы. Но я столкнулся с проблемой создания тензора. Этот код может работать.
#include <torch/torch.h>
#include <iostream>
int main(){
std::vector<int64_t> test_data = {1, 2, 3, 4, 5, 6, 7, 8, 9};
torch::Tensor s = torch::from_blob(test_data.data(), {3, 3}, torch::kInt64);
std::cout << "test case pass" << std::endl;
}
Но этот код не может работать.
int main(){
auto option = torch::TensorOptions().dtype(torch::KInt16);
auto b = torch::zeros({2,3}, option);
std::cout << "test case pass" << std::endl;
}
и журнал ошибок компиляции здесь.
error: no member named 'KInt16' in namespace 'torch'; did you mean 'kInt16'?
Ответ №1:
Как явно указано в сообщении об ошибке, вы допустили опечатку: вы должны были написать torch::kInt16
вместо torch::KInt16
. k
Не должно быть с заглавной буквы.