Как вычислить подключенный компонент, используя Python Client в Grakn - PullRequest
0 голосов
/ 10 марта 2020

Я хочу получить кластеры (или подключенные компоненты) с помощью Python клиента. Я могу сделать это с помощью graql следующим образом:

compute cluster in [company, c2c], using connected-component, where contains=V86179944;

Я также могу выполнить запрос с Python:

query = "compute cluster in [company, c2c], using connected-component, where contains=V86179944;"
with GraknClient(uri="localhost:48555") as client:
    with client.session(keyspace=keyspace) as session:
        with session.transaction().read() as transaction:
            answer_iterator = transaction.query(query)
            # What to do here??          

Однако, Я не знаю, как получить доступ к результатам . Согласно python клиентским документам , есть 2 способа получения результатов:

  • итерация по
  • использование collect_concepts()

Когда я повторяюсь, я не могу использовать .map() Я получаю AttributeError: 'ConceptSet' object has no attribute 'map'

Когда я пытаюсь collect_concepts, я получаю GraknError: Only use .collect_concepts on ConceptMaps returned by query()

1 Ответ

2 голосов
/ 10 марта 2020

map() и collect_concepts (которые будут удалены в следующей версии клиента Python) являются методами типа ответа ConceptMap. В результате запроса compute cluster вы получаете тип ответа ConceptSet. ConceptSet имеет метод set(), который возвращает набор идентификаторов понятий после вычисления кластера.

Здесь вы найдете типы запросов и соответствующий им тип ответа и здесь вы найдете документацию по методу set(), доступную на ConceptSet.

...