diff --git a/src/class_resolver/base.py b/src/class_resolver/base.py
index 138ab7e..0b5aad7 100644
--- a/src/class_resolver/base.py
+++ b/src/class_resolver/base.py
@@ -234,6 +234,11 @@ class BaseResolver(ABC, Generic[X, Y]):
             **kwargs,
         )
 
+    def register_entrypoint(self, group: str) -> None:
+        """Register additional entries from an entrypoint."""
+        for element in self._from_entrypoint(group).difference(self.lookup_dict.values()):
+            self.register(element)
+
     @staticmethod
     def _from_entrypoint(group: str) -> Set[X]:
         elements = set()

diff --git a/tests/test_function_resolver.py b/tests/test_function_resolver.py
index e32948a..c2b498b 100644
--- a/tests/test_function_resolver.py
+++ b/tests/test_function_resolver.py
@@ -2,6 +2,7 @@
 
 """Tests for the function resolver."""
 
+import operator
 import unittest
 
 from class_resolver import FunctionResolver
@@ -102,3 +103,12 @@ class TestFunctionResolver(unittest.TestCase):
         self.assertEqual({"add", "sub", "mul"}, set(resolver.lookup_dict))
         self.assertEqual(set(), set(resolver.synonyms))
         self.assertNotIn("expected_failure", resolver.lookup_dict)
+
+    def test_late_entrypoints(self):
+        """Test loading late entrypoints."""
+        resolver = FunctionResolver([operator.add, operator.sub])
+        self.assertEqual({"add", "sub"}, set(resolver.lookup_dict))
+        resolver.register_entrypoint("class_resolver_demo")
+        self.assertEqual({"add", "sub", "mul"}, set(resolver.lookup_dict))
+        self.assertEqual(set(), set(resolver.synonyms))
+        self.assertNotIn("expected_failure", resolver.lookup_dict)

Combine subclass and entrypoint instantiation
While the entrypoint loader in PyKEEN seems to be very clever, it's still sort of a problem for collab users. It might be better to provide a mixed version where there are some base classes that are in PyKEEN, plus the possibility to add extra stuff
tests/test_function_resolver.py::TestFunctionResolver::test_late_entrypoints
tests/test_function_resolver.py::TestFunctionResolver::test_contents tests/test_function_resolver.py::TestFunctionResolver::test_default_lookup tests/test_function_resolver.py::TestFunctionResolver::test_entrypoints tests/test_function_resolver.py::TestFunctionResolver::test_lookup tests/test_function_resolver.py::TestFunctionResolver::test_make tests/test_function_resolver.py::TestFunctionResolver::test_make_safe tests/test_function_resolver.py::TestFunctionResolver::test_passthrough tests/test_function_resolver.py::TestFunctionResolver::test_registration_failure tests/test_function_resolver.py::TestFunctionResolver::test_registration_synonym