Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to latest vLLM upstream and Support vLLM on CPU #149

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

xwu99
Copy link

@xwu99 xwu99 commented Apr 23, 2024

  • Update models to pydantic v2 as latest vllm has adopted v2 models instead of v1
  • Fix AutoscalingConfig model as it's from Ray Serve that is based on pydantic v1
  • Add CPU model yaml files for Llama2 7B

@xwu99 xwu99 marked this pull request as draft April 23, 2024 07:40
@XBeg9
Copy link

XBeg9 commented Apr 24, 2024

were you able to run this locally? does it work? I am just looking forward to see how to update this project to support latest vllm

@xwu99
Copy link
Author

xwu99 commented Apr 25, 2024

were you able to run this locally? does it work? I am just looking forward to see how to update this project to support latest vllm

I am working on this. Several packages have been updated (ray, vllm, pydantic, openai etc.) since the last release of RayLLM. Hopefully to get it working soon.

Signed-off-by: Wu, Xiaochang <xiaochang.wu@intel.com>
@lynkz-matt-psaltis
Copy link

Hey all,

I also have similar updates on a fork however I've struggled to get feedback from the maintainers to work out how to proceed here. I similiarly updated rayllm to pydantic v2 due to the vllm migration to v2 proper (not using the v1 back-compat). The challenge this introduced is that it makes these changes incompatible with ray because ray is still using v1 compat. See: ray-project/ray#43908 (I haven't had a chance to go back and get further specifics as requested to help convince the core ray team to reconsider the pydantic upgrade)

There's numerous other signature changes with the tight coupling of ray and vllm so whilst you may get rayllm working directly with vllm, I wonder what the mileage will be here on getting this contribution accepted if it excludes ray support.

Just food for thought. :)

@xwu99
Copy link
Author

xwu99 commented Apr 28, 2024

Hey all,

I also have similar updates on a fork however I've struggled to get feedback from the maintainers to work out how to proceed here. I similiarly updated rayllm to pydantic v2 due to the vllm migration to v2 proper (not using the v1 back-compat). The challenge this introduced is that it makes these changes incompatible with ray because ray is still using v1 compat. See: ray-project/ray#43908 (I haven't had a chance to go back and get further specifics as requested to help convince the core ray team to reconsider the pydantic upgrade)

There's numerous other signature changes with the tight coupling of ray and vllm so whilst you may get rayllm working directly with vllm, I wonder what the mileage will be here on getting this contribution accepted if it excludes ray support.

Just food for thought. :)

No need for ray to upgrade. I just upgrade AutoscalingConfig to v2 here.
Previously I used pydantic.v1 but found latest fastapi has issues supporting pydantic.v1.

@xwu99 xwu99 marked this pull request as ready for review April 28, 2024 07:39
Signed-off-by: Wu, Xiaochang <xiaochang.wu@intel.com>
Signed-off-by: Wu, Xiaochang <xiaochang.wu@intel.com>
@marov
Copy link

marov commented May 4, 2024

@xwu99 comment says vllm is installed seperately from source for now but I don't see anywhere it being installed?

@xwu99
Copy link
Author

xwu99 commented May 5, 2024

@xwu99 comment says vllm is installed seperately from source for now but I don't see anywhere it being installed?

You just need to follow vLLM official guide.

@depenglee1707
Copy link

@xwu99 I saw worker_use_ray=False, is that means your implements cannot support model parallelization? I mean world_size > 1?

@xwu99
Copy link
Author

xwu99 commented May 6, 2024

@xwu99 I saw worker_use_ray=False, is that means your implements cannot support model parallelization? I mean world_size > 1?

vLLM for CPU does not support tensor parallelism yet. This PR should be revised later to support both CPU and GPU. Right now it's just adapted for CPU.

@depenglee1707
Copy link

@xwu99 I saw worker_use_ray=False, is that means your implements cannot support model parallelization? I mean world_size > 1?

vLLM for CPU does not support tensor parallelism yet. This PR should be revised later to support both CPU and GPU. Right now it's just adapted for CPU.

Great, thanks for clarification. I also try to upgrade vllm to latest version but for GPU, I found it's not a easy work. the main problem is vllm require driver process also has GPU capability

Signed-off-by: Wu, Xiaochang <xiaochang.wu@intel.com>
@xwu99 xwu99 changed the title Support vLLM on CPU from vllm upstream Update to latest vLLM upstream and Support vLLM on CPU May 6, 2024
xwu99 added 4 commits May 6, 2024 03:08
Signed-off-by: Wu, Xiaochang <xiaochang.wu@intel.com>
Signed-off-by: Wu, Xiaochang <xiaochang.wu@intel.com>
Signed-off-by: Wu, Xiaochang <xiaochang.wu@intel.com>
Signed-off-by: Wu, Xiaochang <xiaochang.wu@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants