Обновить
8K+
10

Пользователь

9
Рейтинг
6
Подписчики
Отправить сообщение

Под карточкой можно понимать разные вещи:

Что индексируется: поля книги склеиваются в одну строку и кодируются в вектор (название, автор и жанры идут вместе с описанием, жанры предварительно очищаются от служебных):

Title: 1984. Author: George Orwell. Genres: Classics, Fiction, Science Fiction, Dystopia. Description: George Orwell’s prophetic, nightmarish vision… the great modern classic of negative utopia…

Что видит пользователь: данные книги остаются на языке каталога (английском), а LLM пишет «почему подходит» на языке запроса. Например, на запрос «антиутопия о тотальной слежке государства» одна из книг в выдаче имеет формат:

  1. 1984 — George Orwell Genres: Classics, Dystopia, Science Fiction · рейтинг 4.19 Почему подходит: классическая антиутопия о тоталитарном государстве тотальной слежки — прямое попадание в тему запроса.

Почему вы так решили?

Иногда говорят не протоколы, а архитектурные стили, но тут на любителя

REST это именно стиль для создания API - рекомендации. А SOAP уже полноценный протокол.

Спасибо за пример, что метаклассы действительно можно создавать динамически. Поправлю в статье. Можно ли использовать в статье ваши слова о том, что можно управлять поведением класса разными способами?

Да, вы правы, здесь вообще лучше убрать упоминание о классах. Имелось в виду, что если функция isinstance возвращает True, то это еще не говорит о том, что первый объект экземпляр второго.

Очевидно что d нельзя создать с помощью только класса Animal, это его наследник.

Вы, верно, ошиблись. d не наследник Animal. Dog наследник Animal как я понял. И тут вы показали пример, о котором говорю и я. isinstance возвращает True, но второй аргумент не порождает первый.

isinstance не отвечает на вопрос "кто кого инстанцирует"(!)

В статье не было так написано. Я наоборот писал следующее:

Хотя если дословно переводить название функции (является экземпляром/есть экземпляр) ... При этом будет ошибкой как в наследовании сказать, что type порождает объекты целого типа ...

И я специально обозначил, что эта схема довольно условна. Говорится только о том, что и в каком порядке порождает объекты.

Не понял это:

он отвечает на вопрос ... "может ли А быть интерпретировано как экземпляр класса B" .

И что вы действительно думаете, что int может интерпретироваться как экземпляр object? int наследник object и не более.

А про какой вы язык говорите? Если объяснять как дело обстоит в питоне, то можно привести следующий код:

>>> class MyClass:
    	class_attribute = "Hello"

    	@classmethod
    	def class_method(cls):
    		print("This is a class method")

    	def instance_method(self):
    		print("This is an instance method")

		
>>> MyClass.class_attribute
'Hello'
>>> MyClass.class_method()
This is a class method
>>> MyClass.instance_method(object)
This is an instance method

У нас нет экземпляра, но мы можем получить доступ как к полям, так и методам класса. И даже к методам экземпляра (на это указывает параметр self), однако надо передать явно ссылку, потому что когда метод экземпляра вызывает от экземпляра, то в него автоматически (неявно) передается ссылка на этот объект. Здесь, для работы функции, ссылка не важна и передаем ее просто для того, чтобы у нас не поднялось исключение.

Насколько метаклассы эффективны? Сами по себе или в контексте их использования где-то в коде? Конечно, если можно их не использовать, то лучше поискать аналог без них. Потому что они, как минимум, усложняют читабельность.

Да, экземпляр класса - это инстанс этого класса. Что вы подразумеваете под бестелестностью? То, что у него нет ни полей, ни методов? Это не так. Все классы наследуются как минимум от object и обладают его атрибутами. Самое простое это магический метод __init__, а из полей можно привести в пример переменную __doc__. А экземпляры класса никак не влияют на его атрибуты.

Информация

В рейтинге
878-й
Зарегистрирован
Активность

Специализация

Специалист
Python