Skip to content

Instantly share code, notes, and snippets.

View dapi's full-sized avatar
🌴
Open for offers

Danil Pismenny dapi

🌴
Open for offers
View GitHub Profile

Обзор подходов к структурно-семантическому RAG на базе графов знаний и онтологий

Обычный RAG хорошо решает поиск близких фрагментов текста, но плохо держит связи между сущностями, документами и шагами рассуждения. Поэтому в инженерной практике все чаще строят не только векторный индекс, но и структурированный слой знаний: граф сущностей, граф чанков, онтологию домена или гибрид этих представлений. Этот сдвиг не отменяет классический RAG [Lew20]. Он добавляет к нему явную память о связях, типах и путях, что особенно важно для многошаговых запросов, обзорных вопросов по корпусу и доменных систем, где важны точность и трассируемость [Edg24, Gut24, Zhu25, Wu25].

Литература показывает, что GraphRAG не является одной техникой. Это семейство систем с разными инженерными целями. Одни строят граф поверх самих документов и чанков, чтобы улучшить навигацию по корпусу [Edg24, Guo24, Zhu25, Xia24]. Другие подключают внешний граф знаний или доменную онтологию, чтобы опереться на уже нормализованные сущности и отношени

module Simple
extend self
def hello
puts 'Hello'
end
end
Simple.hello
# => Hello
@rechner
rechner / freeipa-openvpn.md
Last active August 19, 2025 14:53
FreeIPA setup for OpenVPN logins

This article proved to be a decent starting point, but I was particularly interested in allowing password-based logins to OpenVPN using a username/password backed by FreeIPA (opposed to client certificates) as the identity provider.

  • IPA join your VPN machine: ipa-client-install --mkhomedir
  • Get a kerberos ticket: kinit
  • Create a Kerberos service principle and HBAC rule for openvpn access:
ipa service-add openvpn/`hostname`
  • Create new hbacrule in console, mark host as the VPN host, and whatever group you want to restrict access to:
# Assuming that HOSTNAME is enrolled to IPA realm already,
# run the following on HOSTNAME where RADIUS server will be deployed
# In FreeIPA 4.6+ host principal has permissions to create own services
kinit -k
ipa service-add 'radius/HOSTNAME'
# create keytab for radius user
ipa-getkeytab -p 'radius/HOSTNAME' -k /etc/raddb/radius.keytab
chown root:radiusd /etc/raddb/radius.keytab
chmod 640 /etc/raddb/radius.keytab
@aliesbelik
aliesbelik / benchmarking-tools.md
Last active March 7, 2026 13:03
Benchmarking & load testing tools
@egyjs
egyjs / Direct Link of YouTube videos.md
Last active February 9, 2026 19:30
PHP API To get Direct Link of YouTube videos
@TimJDFletcher
TimJDFletcher / GNUPG_agent_forwarding.md
Last active November 27, 2025 19:49 — forked from surhudm/GNUPG_agent_forwarding.md
GnuPG agent forwarding

Forward GnuPG agent from macOS to Linux

On the remote machine

Run gpg once as your to create the directory structure

gpg --list-keys

For headless systemd based hosts

@mdesantis
mdesantis / upgrade-postgres-9.6-to-10.md
Last active October 11, 2021 08:11 — forked from delameko/upgrade-postgres-9.5-to-9.6.md
Upgrading PostgreSQL from 9.6 to 10 on Ubuntu 16.04

TL;DR

Install Postgres 10, and then:

sudo pg_dropcluster 10 main --stop
sudo pg_upgradecluster 9.6 main
sudo pg_dropcluster 9.6 main
@doitian
doitian / rails-cookie-decrypt.go
Created September 23, 2017 07:30
rails session encrypt
@AshikNesin
AshikNesin / react-file-upload.js
Created February 2, 2017 06:46
Simple React File Upload
import React from 'react'
import axios, { post } from 'axios';
class SimpleReactFileUpload extends React.Component {
constructor(props) {
super(props);
this.state ={
file:null
}