Updated spacy model in arc 2 and added two tools for testing in arc 1

pull/34/head
s8613 2025-05-04 20:26:29 +02:00
parent 6dc510b524
commit d753e748f0
17 changed files with 2208 additions and 239 deletions

View File

@ -41,3 +41,38 @@ def getFromChatGPTSingle(value: str) -> dict:
def get_greeting(name: str) -> str:
"""Get a personalized greeting"""
return f"Hello, {name}!"
""" Example prompt: Get data from spacy and exxeta and merge them. Validate if Core+ is a valid RISIKOPROFIL. """
@mcp.tool()
def validate_entity(entity: str, label: str) -> dict:
"""Returns if the entity is valid based on hardcoded rules."""
valid_risiko = {"core", "core+", "value-added", "opportunistisch"}
normalized = entity.lower().replace(" ", "").replace("-", "")
if label.lower() == "risikoprofil" and normalized in valid_risiko:
return {"status": "valid", "entity": entity}
return {"status": "invalid", "entity": entity}
""" Example prompt: Get spacy and exxeta results and merge them. Then validate if "Core/Core+" is a valid Risikoprofil. """
@mcp.tool()
def merge_spacy_exxeta(spacy_result: list[dict], exxeta_result: list[dict]) -> list[dict]:
"""Merge two results, mark as validated if label/entity/page match."""
def norm(e): return e["entity"].lower().replace(" ", "")
merged = []
seen = set()
for s in spacy_result:
s_norm = norm(s)
s_page = s["page"]
match = next((e for e in exxeta_result if e["label"] == s["label"] and norm(e) == s_norm and e["page"] == s_page), None)
if match:
merged.append({**s, "status": "validated"})
seen.add((match["entity"], match["page"]))
else:
merged.append({**s, "status": "spacy_only"})
for e in exxeta_result:
if (e["entity"], e["page"]) not in seen:
merged.append({**e, "status": "exxeta_only"})
return merged

View File

@ -37,7 +37,7 @@ def upload():
extract_with_spacy(pitchbook_pages)
# Step 3: Merge and validate results
merge_and_validate_entities()
merge_and_validate_entities(filter_label="RISIKOPROFIL")
except Exception as e:
return jsonify({"error": str(e)}), 500

View File

@ -6,7 +6,7 @@
},
{
"label": "RISIKOPROFIL",
"entity": "core, core+, value-added",
"entity": "Core, core+, value-added",
"page": 7
},
{
@ -49,16 +49,6 @@
"entity": "Core",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
@ -81,12 +71,7 @@
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"entity": "Core/Core+",
"page": 19
},
{
@ -109,6 +94,11 @@
"entity": "Core",
"page": 26
},
{
"label": "RISIKOPROFIL",
"entity": "Value-added",
"page": 26
},
{
"label": "RISIKOPROFIL",
"entity": "Core Offices, Core + assets",
@ -119,16 +109,6 @@
"entity": "Core, Core+",
"page": 33
},
{
"label": "RISIKOPROFIL",
"entity": "Core, Core+",
"page": 33
},
{
"label": "RISIKOPROFIL",
"entity": "Value-added",
"page": 33
},
{
"label": "RISIKOPROFIL",
"entity": "Core",

View File

@ -1,16 +1,79 @@
[
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 1,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core and Core+",
"page": 4,
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "CITIES",
"page": 6,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "closed-end and open-ended",
"page": 6,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Club",
"page": 6,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Club",
"page": 7,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Club",
"page": 7,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "core, core+, value-added",
"page": 7,
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Each",
"page": 8,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Land",
"page": 8,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "C",
"page": 8,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
@ -18,6 +81,13 @@
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "Fund\nFund Objective",
"page": 10,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core/Core+",
@ -38,11 +108,39 @@
},
{
"label": "RISIKOPROFIL",
"entity": "UK, DE, BE, NL, LU,",
"entity": "CH",
"page": 10,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 10,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "June",
"page": 11,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Lock",
"page": 11,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "before",
"page": 11,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core / Core +",
@ -57,7 +155,7 @@
},
{
"label": "RISIKOPROFIL",
"entity": "core\n",
"entity": "Long",
"page": 12,
"status": "single-source",
"source": "spacy"
@ -69,6 +167,20 @@
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Hold",
"page": 12,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 12,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "core/core+",
@ -77,56 +189,32 @@
},
{
"label": "RISIKOPROFIL",
"entity": "6,4 6,4",
"entity": "Fund\nSees has",
"page": 13,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Country /",
"entity": "Core",
"page": 14,
"status": "single-source",
"source": "spacy"
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Core Excellent",
"entity": "Core",
"page": 14,
"status": "single-source",
"source": "spacy"
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Core 40",
"entity": "Core",
"page": 14,
"status": "single-source",
"source": "spacy"
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Core 400m",
"page": 14,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core 99m-102",
"page": 14,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core 85m-90m",
"page": 14,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core 50",
"entity": "Good New",
"page": 14,
"status": "single-source",
"source": "spacy"
@ -135,89 +223,38 @@
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 14,
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Core 85m-90",
"page": 14,
"status": "single-source",
"source": "exxeta"
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "June\n",
"page": 14,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 14,
"status": "single-source",
"source": "exxeta"
"page": 15,
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 14,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 14,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 14,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 14,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 14,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "Country /",
"entity": "Good New",
"page": 15,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core Good New",
"page": 15,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core 44m-46m",
"page": 15,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core Good New",
"page": 15,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core CBD New",
"page": 15,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core Good New",
"entity": "Good",
"page": 15,
"status": "single-source",
"source": "spacy"
@ -226,47 +263,58 @@
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 15,
"status": "single-source",
"source": "exxeta"
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"entity": "Leed Platinium",
"page": 15,
"status": "single-source",
"source": "exxeta"
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"entity": "City",
"page": 15,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 15,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 15,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "countries, giving",
"page": 18,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 15,
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Good New",
"page": 15,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core CBD",
"page": 15,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 15,
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Good New",
"page": 15,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core/Core+",
"page": 19,
"status": "single-source",
"source": "exxeta"
@ -285,14 +333,49 @@
},
{
"label": "RISIKOPROFIL",
"entity": "D, and",
"entity": "C.",
"page": 21,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "UK, DE, BE, NL, LU,",
"entity": "Fund",
"page": 22,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Sarl",
"page": 22,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Look",
"page": 26,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "High",
"page": 26,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Tier",
"page": 26,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "CH",
"page": 26,
"status": "single-source",
"source": "spacy"
@ -306,7 +389,21 @@
},
{
"label": "RISIKOPROFIL",
"entity": "core or",
"entity": "Value-added",
"page": 26,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 27,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "core",
"page": 27,
"status": "single-source",
"source": "spacy"
@ -318,6 +415,13 @@
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Each",
"page": 27,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core Offices, Core + assets",
@ -334,24 +438,38 @@
},
{
"label": "RISIKOPROFIL",
"entity": "kgCO,e",
"entity": "kgCO,e/m?.an",
"page": 30,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "C,\n",
"entity": "C",
"page": 31,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "CARBONE\nC,\n",
"page": 32,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core, Core+",
"entity": "Fund\n",
"page": 33,
"status": "single-source",
"source": "exxeta"
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "semi-annually",
"page": 33,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
@ -362,21 +480,42 @@
},
{
"label": "RISIKOPROFIL",
"entity": "Value-added",
"page": 33,
"entity": "Core",
"page": 34,
"status": "single-source",
"source": "exxeta"
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "KfW, Dwp",
"entity": "CoC",
"page": 34,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 34,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "CoC",
"page": 34,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "CoC",
"page": 35,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Bank,",
"entity": "Core Parking",
"page": 35,
"status": "single-source",
"source": "spacy"
@ -395,37 +534,49 @@
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "3/5",
"page": 36,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 36,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Cash-on-cash",
"page": 36,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core Parking",
"page": 36,
"status": "single-source",
"source": "exxeta"
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Core Parking",
"entity": "Cash-on-cash",
"page": 36,
"status": "single-source",
"source": "exxeta"
},
{
"label": "RISIKOPROFIL",
"entity": "HSBC, RTE",
"page": 37,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core WALB (",
"entity": "Core",
"page": 37,
"status": "single-source",
"source": "spacy"
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Core WALB (",
"entity": "Cash-on-cash",
"page": 37,
"status": "single-source",
"source": "spacy"
@ -434,28 +585,46 @@
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 37,
"status": "single-source",
"source": "exxeta"
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"entity": "Cash-on-cash",
"page": 37,
"status": "single-source",
"source": "exxeta"
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "5/5",
"page": 38,
"status": "single-source",
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 38,
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Cash-on-cash",
"page": 38,
"status": "single-source",
"source": "exxeta"
"source": "spacy"
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 38,
"status": "validated"
},
{
"label": "RISIKOPROFIL",
"entity": "Cash-on-cash",
"page": 38,
"status": "single-source",
"source": "exxeta"
"source": "spacy"
}
]

View File

@ -8,7 +8,7 @@ def load_json(path: Path):
with path.open("r", encoding="utf-8") as f:
return json.load(f)
def merge_and_validate_entities():
def merge_and_validate_entities(filter_label=None):
base = Path(__file__).resolve().parent.parent
spacy_path = base / "spacy_service/output/spacy-results.json"
exxeta_path = base / "exxeta_service/output/exxeta-results.json"
@ -43,7 +43,10 @@ def merge_and_validate_entities():
merged.append({**e, "status": "single-source", "source": "exxeta"})
merged.sort(key=lambda x: (x.get("page", 0), x.get("label", "")))
if filter_label:
merged = [m for m in merged if m.get("label") == filter_label]
with output_path.open("w", encoding="utf-8") as f:
json.dump(merged, f, indent=2)
return merged

View File

@ -2,13 +2,13 @@
"lang":"de",
"name":"pipeline",
"version":"0.0.0",
"spacy_version":">=3.7.2,<3.8.0",
"spacy_version":">=3.8.5,<3.9.0",
"description":"",
"author":"",
"email":"",
"url":"",
"license":"",
"spacy_git_version":"a89eae928",
"spacy_git_version":"d0c705c",
"vectors":{
"width":0,
"vectors":0,
@ -21,7 +21,11 @@
],
"ner":[
"RISIKOPROFIL"
"AUSSCH\u00dcTTUNGSRENDITE",
"Aussch\u00fcttungsrendite",
"Laufzeit",
"RISIKOPROFIL",
"Risikoprofil"
]
},
"pipeline":[
@ -36,17 +40,37 @@
],
"performance":{
"ents_f":1.0,
"ents_p":1.0,
"ents_r":1.0,
"ents_f":0.9007633588,
"ents_p":0.8309859155,
"ents_r":0.9833333333,
"ents_per_type":{
"RISIKOPROFIL":{
"p":1.0,
"r":1.0,
"f":1.0
},
"AUSSCH\u00dcTTUNGSRENDITE":{
"p":0.5925925926,
"r":0.9411764706,
"f":0.7272727273
},
"Aussch\u00fcttungsrendite":{
"p":0.6666666667,
"r":1.0,
"f":0.8
},
"Laufzeit":{
"p":1.0,
"r":1.0,
"f":1.0
},
"Risikoprofil":{
"p":1.0,
"r":1.0,
"f":1.0
}
},
"tok2vec_loss":0.000000029,
"ner_loss":0.0000000614
"tok2vec_loss":128.6722957797,
"ner_loss":1581.2761230469
}
}

View File

@ -1 +1 @@
ĄmovesŮx{"0":{},"1":{"RISIKOPROFIL":45},"2":{"RISIKOPROFIL":45},"3":{"RISIKOPROFIL":45},"4":{"RISIKOPROFIL":45,"":1},"5":{"":1}}Łcfg<66>§neg_keyŔ
¥movesÚè{"0":{},"1":{"RISIKOPROFIL":91,"AUSSCH\u00dcTTUNGSRENDITE":40,"Laufzeit":21,"Aussch\u00fcttungsrendite":8,"Risikoprofil":5},"2":{"RISIKOPROFIL":91,"AUSSCH\u00dcTTUNGSRENDITE":40,"Laufzeit":21,"Aussch\u00fcttungsrendite":8,"Risikoprofil":5},"3":{"RISIKOPROFIL":91,"AUSSCH\u00dcTTUNGSRENDITE":40,"Laufzeit":21,"Aussch\u00fcttungsrendite":8,"Risikoprofil":5},"4":{"RISIKOPROFIL":91,"AUSSCH\u00dcTTUNGSRENDITE":40,"Laufzeit":21,"Aussch\u00fcttungsrendite":8,"Risikoprofil":5,"":1},"5":{"":1}}£cfg<66>§neg_keyÀ

View File

@ -2,13 +2,13 @@
"lang":"de",
"name":"pipeline",
"version":"0.0.0",
"spacy_version":">=3.7.2,<3.8.0",
"spacy_version":">=3.8.5,<3.9.0",
"description":"",
"author":"",
"email":"",
"url":"",
"license":"",
"spacy_git_version":"a89eae928",
"spacy_git_version":"d0c705c",
"vectors":{
"width":0,
"vectors":0,
@ -21,7 +21,11 @@
],
"ner":[
"RISIKOPROFIL"
"AUSSCH\u00dcTTUNGSRENDITE",
"Aussch\u00fcttungsrendite",
"Laufzeit",
"RISIKOPROFIL",
"Risikoprofil"
]
},
"pipeline":[
@ -36,17 +40,37 @@
],
"performance":{
"ents_f":1.0,
"ents_p":1.0,
"ents_r":1.0,
"ents_f":0.9007633588,
"ents_p":0.8309859155,
"ents_r":0.9833333333,
"ents_per_type":{
"RISIKOPROFIL":{
"p":1.0,
"r":1.0,
"f":1.0
},
"AUSSCH\u00dcTTUNGSRENDITE":{
"p":0.5925925926,
"r":0.9411764706,
"f":0.7272727273
},
"Aussch\u00fcttungsrendite":{
"p":0.6666666667,
"r":1.0,
"f":0.8
},
"Laufzeit":{
"p":1.0,
"r":1.0,
"f":1.0
},
"Risikoprofil":{
"p":1.0,
"r":1.0,
"f":1.0
}
},
"tok2vec_loss":0.000000029,
"ner_loss":0.0000000614
"tok2vec_loss":128.6722957797,
"ner_loss":1581.2761230469
}
}

View File

@ -1 +1 @@
ĄmovesŮx{"0":{},"1":{"RISIKOPROFIL":45},"2":{"RISIKOPROFIL":45},"3":{"RISIKOPROFIL":45},"4":{"RISIKOPROFIL":45,"":1},"5":{"":1}}Łcfg<66>§neg_keyŔ
¥movesÚè{"0":{},"1":{"RISIKOPROFIL":91,"AUSSCH\u00dcTTUNGSRENDITE":40,"Laufzeit":21,"Aussch\u00fcttungsrendite":8,"Risikoprofil":5},"2":{"RISIKOPROFIL":91,"AUSSCH\u00dcTTUNGSRENDITE":40,"Laufzeit":21,"Aussch\u00fcttungsrendite":8,"Risikoprofil":5},"3":{"RISIKOPROFIL":91,"AUSSCH\u00dcTTUNGSRENDITE":40,"Laufzeit":21,"Aussch\u00fcttungsrendite":8,"Risikoprofil":5},"4":{"RISIKOPROFIL":91,"AUSSCH\u00dcTTUNGSRENDITE":40,"Laufzeit":21,"Aussch\u00fcttungsrendite":8,"Risikoprofil":5,"":1},"5":{"":1}}£cfg<66>§neg_keyÀ

View File

@ -1,14 +1,89 @@
[
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 1
},
{
"label": "RISIKOPROFIL",
"entity": "Core and Core+",
"page": 4
},
{
"label": "RISIKOPROFIL",
"entity": "CITIES",
"page": 6
},
{
"label": "RISIKOPROFIL",
"entity": "closed-end and open-ended",
"page": 6
},
{
"label": "RISIKOPROFIL",
"entity": "Club",
"page": 6
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4,3%",
"page": 6
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "1,0%",
"page": 6
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4,9%",
"page": 6
},
{
"label": "RISIKOPROFIL",
"entity": "Club",
"page": 7
},
{
"label": "RISIKOPROFIL",
"entity": "Club",
"page": 7
},
{
"label": "RISIKOPROFIL",
"entity": "core, core+, value-added",
"page": 7
},
{
"label": "RISIKOPROFIL",
"entity": "Each",
"page": 8
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "57 86 100\neach asset: the BREEAM In Use Part 1 international referential is fully Pollution\n59%",
"page": 8
},
{
"label": "RISIKOPROFIL",
"entity": "Land",
"page": 8
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "51%",
"page": 8
},
{
"label": "RISIKOPROFIL",
"entity": "C",
"page": 8
},
{
"label": "RISIKOPROFIL",
"entity": "Fund\nFund Objective",
"page": 10
},
{
"label": "RISIKOPROFIL",
"entity": "Core/Core+",
@ -25,10 +100,50 @@
"page": 10
},
{
"label": "RISIKOPROFIL",
"entity": "UK, DE, BE, NL, LU,",
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "45%",
"page": 10
},
{
"label": "RISIKOPROFIL",
"entity": "CH",
"page": 10
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 10
},
{
"label": "Risikoprofil",
"entity": "Cash on Cash: 4% - 5%\nSt\n10 GE: :: Estate Prime Europe",
"page": 10
},
{
"label": "RISIKOPROFIL",
"entity": "June",
"page": 11
},
{
"label": "RISIKOPROFIL",
"entity": "Lock",
"page": 11
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "55-",
"page": 11
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "5-10; 10-50; 50+ ME). Fee only payable on investment called.\nFees For investors committing before 31/",
"page": 11
},
{
"label": "RISIKOPROFIL",
"entity": "before",
"page": 11
},
{
"label": "RISIKOPROFIL",
"entity": "Core / Core +",
@ -41,7 +156,7 @@
},
{
"label": "RISIKOPROFIL",
"entity": "core\n",
"entity": "Long",
"page": 12
},
{
@ -49,6 +164,16 @@
"entity": "Term / core+",
"page": 12
},
{
"label": "RISIKOPROFIL",
"entity": "Hold",
"page": 12
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 12
},
{
"label": "RISIKOPROFIL",
"entity": "core/core+",
@ -56,78 +181,168 @@
},
{
"label": "RISIKOPROFIL",
"entity": "6,4 6,4",
"entity": "Fund\nSees has",
"page": 13
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "5,3 16,1",
"page": 13
},
{
"label": "Laufzeit",
"entity": "13,6 8,9 12,8 8,0",
"page": 13
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "58,9 58,2 59,8 0,0",
"page": 13
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "5th 5th",
"page": 13
},
{
"label": "Ausschüttungsrendite",
"entity": "10th 5th\n",
"page": 13
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "5,3\n",
"page": 13
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "45%",
"page": 13
},
{
"label": "RISIKOPROFIL",
"entity": "Country /",
"entity": "Core",
"page": 14
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4,17%",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Core Excellent",
"entity": "Core",
"page": 14
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "400m Good Very",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Core 40",
"entity": "Core",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Core 400m",
"entity": "Good New",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Core 99m-102",
"entity": "Core",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Core 85m-90m",
"entity": "Core 85m-90",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Core 50",
"entity": "June\n",
"page": 14
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "55m",
"page": 14
},
{
"label": "RISIKOPROFIL",
"entity": "Country /",
"entity": "Core",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Core Good New",
"entity": "Good New",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Core 44m-46m",
"entity": "Good",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Core Good New",
"entity": "Core",
"page": 15
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "59 parking",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Core CBD New",
"entity": "Leed Platinium",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Core Good New",
"entity": "City",
"page": 15
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4,50%",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "countries, giving",
"page": 18
"entity": "Core",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Good New",
"page": 15
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4,50%",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Core CBD",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 15
},
{
"label": "RISIKOPROFIL",
"entity": "Good New",
"page": 15
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "52 assets 55 assets",
"page": 17
},
{
"label": "RISIKOPROFIL",
@ -139,19 +354,104 @@
"entity": "core/core+",
"page": 20
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "472 1,636",
"page": 20
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "3,214 4,846",
"page": 20
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "52 71 62 =RE-=)Seti\nassets Be — Be\nEr \\ ie ulgarie\nRE Leverage 0% 234% 296% 307%",
"page": 20
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "358%",
"page": 20
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "378%",
"page": 20
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "347%",
"page": 20
},
{
"label": "RISIKOPROFIL",
"entity": "D, and",
"entity": "C.",
"page": 21
},
{
"label": "RISIKOPROFIL",
"entity": "UK, DE, BE, NL, LU,",
"entity": "Fund",
"page": 22
},
{
"label": "RISIKOPROFIL",
"entity": "Sarl",
"page": 22
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "| 5%",
"page": 24
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4%",
"page": 24
},
{
"label": "Ausschüttungsrendite",
"entity": "| 3%",
"page": 24
},
{
"label": "Laufzeit",
"entity": "19\n(4\nma3",
"page": 25
},
{
"label": "Risikoprofil",
"entity": "This context of rarity, if it benefits “In white”\nparameters\nlaunches, it exerts upward pressure on facial rents.\nSource!\n30 GE: :: Estate Prime Europe",
"page": 25
},
{
"label": "RISIKOPROFIL",
"entity": "Look",
"page": 26
},
{
"label": "RISIKOPROFIL",
"entity": "core or",
"entity": "High",
"page": 26
},
{
"label": "RISIKOPROFIL",
"entity": "Tier",
"page": 26
},
{
"label": "RISIKOPROFIL",
"entity": "CH",
"page": 26
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 27
},
{
"label": "RISIKOPROFIL",
"entity": "core",
"page": 27
},
{
@ -161,37 +461,257 @@
},
{
"label": "RISIKOPROFIL",
"entity": "kgCO,e",
"entity": "Each",
"page": 27
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "59%",
"page": 29
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "52%",
"page": 29
},
{
"label": "RISIKOPROFIL",
"entity": "kgCO,e/m?.an",
"page": 30
},
{
"label": "RISIKOPROFIL",
"entity": "C,\n",
"entity": "C",
"page": 31
},
{
"label": "Ausschüttungsrendite",
"entity": "3\ncriteria are considered to build this grade:\n- The geolocation of the asset and the resulting predictive scenarios of the climate change ;\n- The devices and characteristics of the asset allowing it to resist to these risks ;\n- The immediate environment of the asset that may include aggravating factors.\nre\n36 |",
"page": 31
},
{
"label": "RISIKOPROFIL",
"entity": "CARBONE\nC,\n",
"page": 32
},
{
"label": "RISIKOPROFIL",
"entity": "KfW, Dwp",
"entity": "Fund\n",
"page": 33
},
{
"label": "RISIKOPROFIL",
"entity": "semi-annually",
"page": 33
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "5)",
"page": 34
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 34
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4.02%",
"page": 34
},
{
"label": "RISIKOPROFIL",
"entity": "CoC",
"page": 34
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4.14%",
"page": 34
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4.40%",
"page": 34
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 34
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4.31%",
"page": 34
},
{
"label": "RISIKOPROFIL",
"entity": "CoC",
"page": 34
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "3.31%",
"page": 34
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4.26%",
"page": 34
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "5) Our sourcing capabilities make us a specialist of European assets origination and asset management\nroJmoe\nEnjoy Area: Office 16,970 sqm Forward sale deal,\nParis development to be\nCore Parking",
"page": 35
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "Co-investment between",
"page": 35
},
{
"label": "RISIKOPROFIL",
"entity": "Bank,",
"entity": "CoC",
"page": 35
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "3.30%",
"page": 35
},
{
"label": "RISIKOPROFIL",
"entity": "HSBC, RTE",
"entity": "Core Parking",
"page": 35
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4.25%",
"page": 35
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "3.60%",
"page": 35
},
{
"label": "RISIKOPROFIL",
"entity": "3/5",
"page": 36
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 36
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "3.45%",
"page": 36
},
{
"label": "RISIKOPROFIL",
"entity": "Cash-on-cash",
"page": 36
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "3.48%",
"page": 36
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "3.22%",
"page": 36
},
{
"label": "RISIKOPROFIL",
"entity": "Core Parking",
"page": 36
},
{
"label": "RISIKOPROFIL",
"entity": "Cash-on-cash",
"page": 36
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4/5)",
"page": 37
},
{
"label": "RISIKOPROFIL",
"entity": "Core WALB (",
"entity": "Core",
"page": 37
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4,78%",
"page": 37
},
{
"label": "RISIKOPROFIL",
"entity": "Core WALB (",
"entity": "Cash-on-cash",
"page": 37
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "5.59%",
"page": 37
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 37
},
{
"label": "RISIKOPROFIL",
"entity": "Cash-on-cash",
"page": 37
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "5.8%",
"page": 37
},
{
"label": "RISIKOPROFIL",
"entity": "5/5",
"page": 38
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 38
},
{
"label": "RISIKOPROFIL",
"entity": "Cash-on-cash",
"page": 38
},
{
"label": "RISIKOPROFIL",
"entity": "Core",
"page": 38
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4.24%",
"page": 38
},
{
"label": "RISIKOPROFIL",
"entity": "Cash-on-cash",
"page": 38
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "4.78%",
"page": 38
},
{
"label": "AUSSCHÜTTUNGSRENDITE",
"entity": "5.56%",
"page": 38
}
]