error sending request to function
We will deploy resnet18 of pytorch in fission with K8s deploy. but test function is faild
error sending request to functionroot
test bash:
curl -X POST -H "Content-Type: application/json" -d '{"image": "data:image/jpeg;base64,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"}' http://192.168.1.10:31314/resnet18
the executor pod logs:
my function file: main.py:
import base64
from io import BytesIO
import torch
import torchvision.models as models
import torchvision.transforms as transforms
from flask import jsonify, request
from PIL import Image
# 加载ResNet-18模型
model = models.resnet18(pretrained=True)
model.eval()
# 获取ImageNet类别列表
with open('imagenet_classes.txt') as f:
classes = [line.strip() for line in f.readlines()]
# 声明数据预处理转换
transform = transforms.Compose([
transforms.Resize(256),
transforms.CenterCrop(224),
transforms.ToTensor(),
# 使用与训练集相同的归一化方式
transforms.Normalize(
mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225]
)
])
def predict():
# 获取POST请求的JSON数据
json_req = request.get_json()
image_data = json_req['image']
# 将base64编码图像数据解码为原始图像数据
image = base64.b64decode(image_data)
# 加载图像为PIL Image格式
image = Image.open(BytesIO(image)).convert('RGB')
# 预处理图像数据
image_tensor = transform(image)
# 使用模型进行推理
with torch.no_grad():
output = model(image_tensor.unsqueeze(0))
predicted_probs, predicted_indexes = torch.topk(output, k=1)
# 返回JSON格式的结果
confidence = round(torch.nn.functional.softmax(predicted_probs, dim=1)[0][0].item(), 4)
predicted_class = classes[predicted_indexes[0].item()]
result = {'class': predicted_class, 'confidence': confidence}
return jsonify(result)
build.sh:
apk add zlib-dev
apk add py3-pillow
pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu -t ${SRC_PKG}
cp -r ${SRC_PKG} ${DEPLOY_PKG}
@saltbo hi, sir. I hope you give me some advice.
To be exact, I am trying to deploy some pre-trained models of pytorch in fission/python-builder-3.7 and python-env-3.7. For this reason, I modified build.sh, added the necessary apk dependencies, and pip to hold pytorch , but the test seems to fail.
we look the function logs:
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/userfunc/deployarchive/main.py", line 4, in <module>
import torch
File "/userfunc/deployarchive/torch/__init__.py", line 217, in <module>
_load_global_deps()
File "/userfunc/deployarchive/torch/__init__.py", line 177, in _load_global_deps
raise err
File "/userfunc/deployarchive/torch/__init__.py", line 172, in _load_global_deps
ctypes.CDLL(lib_path, mode=ctypes.RTLD_GLOBAL)
File "/usr/local/lib/python3.7/ctypes/__init__.py", line 364, in __init__
self._handle = _dlopen(self._name, mode)
OSError: Error relocating /userfunc/deployarchive/torch/lib/libgomp-a34b3233.so.1: pthread_attr_setaffinity_np: symbol not found
self._handle = _dlopen(self._name, mode)
OSError: Error relocating /userfunc/deployarchive/torch/lib/libgomp-a34b3233.so.1: pthread_attr_setaffinity_np: symbol not found
we also update env to python:3.9, but it also get errors:
mod = importlib.import_module(moduleName)
File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 850, in exec_module
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "/userfunc/deployarchive/main.py", line 4, in <module>
import torch
File "/userfunc/deployarchive/torch/__init__.py", line 217, in <module>
_load_global_deps()
File "/userfunc/deployarchive/torch/__init__.py", line 177, in _load_global_deps
raise err
File "/userfunc/deployarchive/torch/__init__.py", line 172, in _load_global_deps
ctypes.CDLL(lib_path, mode=ctypes.RTLD_GLOBAL)
File "/usr/local/lib/python3.9/ctypes/__init__.py", line 374, in __init__
self._handle = _dlopen(self._name, mode)
OSError: Error relocating /userfunc/deployarchive/torch/lib/libgomp-a34b3233.so.1: pthread_attr_setaffinity_np: symbol not found
and 3.10 also meeting this errors:
mod = importlib.import_module(moduleName)
File "/usr/local/lib/python3.10/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/userfunc/deployarchive/main.py", line 4, in <module>
import torch
File "/userfunc/deployarchive/torch/__init__.py", line 217, in <module>
_load_global_deps()
File "/userfunc/deployarchive/torch/__init__.py", line 177, in _load_global_deps
raise err
File "/userfunc/deployarchive/torch/__init__.py", line 172, in _load_global_deps
ctypes.CDLL(lib_path, mode=ctypes.RTLD_GLOBAL)
File "/usr/local/lib/python3.10/ctypes/__init__.py", line 374, in __init__
self._handle = _dlopen(self._name, mode)
OSError: Error relocating /userfunc/deployarchive/torch/lib/libgomp-a34b3233.so.1: pthread_attr_setaffinity_np: symbol not found
@saltbo hi, sir. I hope you give me some advice.
It seems that there is a lack of some dependencies in the running environment, but I don't know exactly what is missing, and I haven't found any relevant content.
https://www.google.com/search?q=libgomp-a34b3233.so.1:+pthread_attr_setaffinity_np:+symbol+not+found+site:stackoverflow.com&rlz=1C5GCEM_enHK1009HK1009&sxsrf=APwXEdfz49tB1xMDPorIO5ulckj-MaZUdQ:1684458057785&sa=X&ved=2ahUKEwi9lbGhl4D_AhUaUvUHHaq4BPkQrQIoBHoECA8QBQ&biw=1920&bih=944&dpr=1
@saltbo hi, sir. I hope you give me some advice.
It seems that there is a lack of some dependencies in the running environment, but I don't know exactly what is missing, and I haven't found any relevant content.
https://www.google.com/search?q=libgomp-a34b3233.so.1:+pthread_attr_setaffinity_np:+symbol+not+found+site:stackoverflow.com&rlz=1C5GCEM_enHK1009HK1009&sxsrf=APwXEdfz49tB1xMDPorIO5ulckj-MaZUdQ:1684458057785&sa=X&ved=2ahUKEwi9lbGhl4D_AhUaUvUHHaq4BPkQrQIoBHoECA8QBQ&biw=1920&bih=944&dpr=1
Thank you! I reconstructed the image using the Debian operating system based on the source code compilation method provided by the mission/environments repository, and configured it with Pytorch in Dockerfile. I solved the problem using apt-get and pip3. I believe that for ML applications with online reasoning, we should build a complete Env ecosystem, especially in large model environments. How can Python images provide model reasoning support on serverless? I think the community can consider these improvements. This is my python3 Dockerfile:
# offical docker image of python debian buster variant
FROM python:3.7-buster
RUN apt-get update -y
RUN apt-get upgrade -y
RUN apt-get install apt-utils -y
RUN apt-get install build-essential -y
RUN apt-get install python3-dev libev-dev python3-setuptools -y
RUN apt-get install libjpeg-dev libpng-dev libtiff-dev -y
RUN apt-get install zlib1g-dev libtiff-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev -y
RUN apt-get install python3-pil -y
RUN apt-get install cython -y
WORKDIR /app
COPY requirements.txt /app
RUN pip3 install -r requirements.txt
RUN pip3 install numpy==1.21.6 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
RUN pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
COPY . /app
ENV PYTHONUNBUFFERED 1
ENTRYPOINT ["python3"]
CMD ["server.py"]
and requirements.txt:
bjoern==3.2.1
blinker==1.4
certifi==2021.10.8
chardet==4.0.0
charset-normalizer==2.0.7
click==8.0.3
Flask==2.1.1
gevent==21.12.0
gevent-ws==2.1.0
greenlet==1.1.2
hiredis==2.0.0
httplib2==0.20.1
idna==3.3
importlib-metadata==4.11.3
itsdangerous==2.0.1
Jinja2==3.0.2
MarkupSafe==2.0.1
pyparsing==2.4.7
python-dateutil==2.8.2
redis==3.5.3
requests==2.26.0
sentry-sdk==1.5.10
six==1.16.0
urllib3==1.26.7
Werkzeug==2.0.2
zipp==3.8.0
zope.event==4.5.0
zope.interface==5.4.0
Cython
Pillow
You can check our latest blog running gpu based functions on Fission.