Closed laserjim closed 2 weeks ago
Looks like pydantic-core==2.20.1
has exactly the same issue, so this is not jiter specific. Presumably anything that depends on pyo3-ffi
will encounter this error?
It is jiter
specific after all, pydantic-core
uses jiter
(via a cargo dependency). I'm going to make a patch for jiter
on our side and try to submit it upstream. For pydantic-core
, changing the cargo dependency is quite tricky to do on our side, so I don't plan to do that at the moment unless you really that version. We have a patch for pydantic-core==2.10.1
and that one should work for now. pydantic-core
has a very fast release cycle, so hopefully, my jiter
patch will be merged and released within a couple of weeks.
I have no reason to believe pydantic-core==2.10.1
wouldn't be sufficient, but 2.20.1
is pulled in as a transitive dependency of pydantic 2.8.2
(pydantic 2.8.2 depends on pydantic-core==2.20.1
).
I tried setting the dependency in my requirements.txt, which gave me something like:
The conflict is caused by:
The user requested pydantic-core==2.10.1
pydantic 2.8.2 depends on pydantic-core==2.20.1
What would be the easiest path forward here? Should I create a patch file that tricks pydantic
to use an older version of pydantic-core
? Is there a documented/easy workflow for creating such patch files for graal? Or should I try downgrading pydantic
also? Is there an easy way to see which version of pydantic
matches pydantic-core==2.10.1
? My concern is that if I downgrade pydantic, I'm going to run into the same problem recursively because I'm pretty sure the pydantic
dependency comes in from the openai
dependency and also the litellm
dependency. It starts to become kindof a mess if I start downgrading a large number of dependencies. At some point, it seems likely one of these version dependency rewrites will actually create a real conflict, and the more kosher solution would be to properly patch pydantic-core==2.20.1
? I honestly don't know, and would defer to your expertise here.
Is there an easy/documented workflow for creating python package patches for graalpy? If so, I'm happy to try my hand at it. But please bear with me, as my knowledge of the python ecosystem is quite limited.
The problem with patching pydantic-core
is that pydantic-core
doesn't actually contain the code that we need to patch. That code is downloaded by cargo (the rust build system) during the build as a dependency and we have no good way to hook into that process because that happens after we patch, in an external tool that's not even in python.
I tried pip install openai litellm pydantic-core==2.10.1
and it installed fine (locally with my jiter
patch), so please wait for the jiter
patch to be merged.
This worked great! Thank you @msimacek!
I'm trying to install
jiter==0.5.0
using the JVM graalpy EA (24.1.0-ea.23
) am running into the following error:Any ideas?