Protobuf issue

This commit is contained in:
Daniel Han 2025-08-19 05:19:41 -07:00
commit 0e1ab9430e
2 changed files with 26 additions and 26 deletions

View file

@ -12,31 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
try:
# Fix up AttributeError: 'MessageFactory' object has no attribute 'GetPrototype'
# MUST do this at the start primarily due to tensorflow causing issues
import google.protobuf.message_factory
class MessageFactory:
def CreatePrototype(self, *args, **kwargs): return
def GetMessages(self, *args, **kwargs): return
def GetPrototype(self, *args, **kwargs): return
if not hasattr(google.protobuf.message_factory, "MessageFactory"):
google.protobuf.message_factory.MessageFactory = MessageFactory
elif hasattr(google.protobuf.message_factory, "MessageFactory") and \
not hasattr(google.protobuf.message_factory.MessageFactory, "GetPrototype") and \
not hasattr(google.protobuf.message_factory, "GetMessageClass"):
google.protobuf.message_factory.MessageFactory = MessageFactory
elif hasattr(google.protobuf.message_factory, "MessageFactory") and \
not hasattr(google.protobuf.message_factory.MessageFactory, "GetPrototype") and \
hasattr(google.protobuf.message_factory, "GetMessageClass"):
GetMessageClass = google.protobuf.message_factory.GetMessageClass
def GetPrototype(self, descriptor):
return GetMessageClass(descriptor)
google.protobuf.message_factory.MessageFactory.GetPrototype = GetPrototype
pass
except:
pass
import warnings, importlib, sys
from packaging.version import Version
import os, re, subprocess, inspect
@ -265,6 +240,31 @@ except:
raise ImportError("Unsloth: Please install unsloth_zoo via `pip install unsloth_zoo`")
pass
try:
# Fix up AttributeError: 'MessageFactory' object has no attribute 'GetPrototype'
# MUST do this at the start primarily due to tensorflow causing issues
import google.protobuf.message_factory
class MessageFactory:
def CreatePrototype(self, *args, **kwargs): return
def GetMessages(self, *args, **kwargs): return
def GetPrototype(self, *args, **kwargs): return
if not hasattr(google.protobuf.message_factory, "MessageFactory"):
google.protobuf.message_factory.MessageFactory = MessageFactory
elif hasattr(google.protobuf.message_factory, "MessageFactory") and \
not hasattr(google.protobuf.message_factory.MessageFactory, "GetPrototype") and \
not hasattr(google.protobuf.message_factory, "GetMessageClass"):
google.protobuf.message_factory.MessageFactory = MessageFactory
elif hasattr(google.protobuf.message_factory, "MessageFactory") and \
not hasattr(google.protobuf.message_factory.MessageFactory, "GetPrototype") and \
hasattr(google.protobuf.message_factory, "GetMessageClass"):
GetMessageClass = google.protobuf.message_factory.GetMessageClass
def GetPrototype(self, descriptor):
return GetMessageClass(descriptor)
google.protobuf.message_factory.MessageFactory.GetPrototype = GetPrototype
pass
except:
pass
from .models import *
from .models import __version__
from .save import *

View file

@ -12,7 +12,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
__version__ = "2025.8.7"
__version__ = "2025.8.8"
__all__ = [
"SUPPORTS_BFLOAT16",