AI Classification and Routing System for Citizen Appeals

Manual Appeal Routing: Lost Time and Errors

AI Development Areas

Frequently Asked Questions

Latest works

  • image_web-applications_feedme_466_0.webp
    Development of a web application for FEEDME
    1285
  • image_ecommerce_furnoro_435_0.webp
    Development of an online store for the company FURNORO
    1241
  • image_logo-advance_0.webp
    B2B Advance company logo design
    696
  • image_crm_enviok_479_0.webp
    Development of a web application for Enviok
    982
  • image_logo-aider_0.webp
    AIDER company logo development
    919
  • image_crm_chasseurs_493_0.webp
    CRM development for Chasseurs
    1033

Manual Appeal Routing: Lost Time and Errors

In government agencies, up to 30% of initial appeals reach the wrong executor. The applicant receives a formal refusal "not in our competence," while the responsible employee spends time on redirection. Result — missed review deadlines and increased repeated complaints. We developed an AI classifier that solves this: Accuracy@1 reaches 92–95% immediately after adaptation. Get an expert consultation — we will analyze your current routing scheme.

How Does Classification Work and Why Is It More Accurate Than Manual Distribution?

Government rubrics are hierarchical: federal → departmental → territorial. An appeal must be assigned to the correct level and specific executor. We use a combination of semantic search on precedents and LLM parsing. Manual distribution gives Accuracy@1 of 60–70% and 20–30% false redirections. The AI classifier reduces false routing rate to 5% by considering territorial affiliation, unstructured attachments, and temporal context.

class RequestClassification(BaseModel): federal_rubric: str department_rubric: str responsible_unit: str responsible_officer: str | None territorial_scope: str subject_area: str requires_field_inspection: bool other_agencies: list[str] confidence: float def classify_request(text: str, attachments: list) -> RequestClassification: # Semantic search on precedent database precedents = precedent_db.search(text, top_k=10) # Multimodal classification if attachments exist (photos, documents) if attachments: attachment_context = analyze_attachments(attachments) else: attachment_context = "" return llm.parse( build_routing_prompt(text, attachment_context, precedents), response_format=RequestClassification ) 
Parameter Manual Routing AI Classifier
Accuracy@1 60–70% 92–95%
Accuracy@3 80–85% 99%+
Time per appeal 5–15 min 0.5–2 sec
Share of repeat redirections 20–30% <5%

Special Cases: Attachments, Geolocation, Mixed Appeals

Attachments (photos, scans, PDFs) often contain key information. The system automatically extracts text, recognizes objects (e.g., potholes in photos), and geotags. If an attachment is unreadable, the model relies on the appeal text and marks the case as requiring expert assessment.

def extract_and_geolocate(text: str) -> GeoContext: addresses = ner_model.extract(text, entity_type="ADDRESS") located_objects = [] for addr in addresses: coords = geocoder.geocode(addr) if coords: admin_unit = geodata.get_admin_unit(coords) responsible = routing_matrix.get_responsible( issue_category=..., admin_unit=admin_unit ) located_objects.append(GeoObject( address=addr, coords=coords, responsible_org=responsible )) return GeoContext(objects=located_objects) 

Geocoding — via Yandex Geocoder or Nominatim. Accuracy of municipality determination — 95%+.

One appeal often contains several diverse issues (e.g., "noisy neighbors and broken elevator"). The system splits the text into independent segments, classifies each separately, then consolidates responses. The review time is calculated based on the longest segment.

Classifier Training and Metrics

Base — historical data. Critical stage — cleaning from erroneous redirections (exclude appeals that were forwarded). Supplemented with anonymized data from similar agencies. We use Active Learning: experts label complex cases, model is fine-tuned iteratively. For quality assessment on new rubrics, we use few-shot testing.

Metric Target Value
Accuracy@1 ≥ 92%
Accuracy@3 ≥ 99%
False routing rate < 5%
Average classification time < 2 sec

What Does Automation Provide?

Through automation, employee workload is reduced — they stop being "sorters" and focus on substantive work. Time savings: from 15 minutes per appeal. For an agency with a flow of 1000 appeals per day, this is more than 200 working hours per month, equivalent to savings from 1.2 million rubles per year.

Integration with Document Management Systems

We support EDMS: DELO, DIRECTUM, Docsvision, 1C:Document Management. The system transfers the appeal with a filled registration card — the executor receives not an email but a structured task with a set deadline.

Process and Implementation Timeline

  1. Audit of current routing process and data.
  2. Development of the classification model (fine-tuning LLaMA 3 or GPT-4o, ensemble with BERT classifier).
  3. Creation of a vector precedent database (Qdrant, 1536-dim embeddings).
  4. Integration with your EDMS (API setup, cards, statuses).
  5. Analytics and monitoring dashboard.
  6. Documentation, operator training, 6 months warranty support.

Pilot project — from 4 weeks. Full implementation with integration — from 3 months. Average pilot project budget — from 300 to 500 thousand rubles, full implementation — from 1 to 3 million rubles. Exact timelines and cost are determined after auditing your system.

Typical Errors and Their Handling

  • Appeals with incomplete data (no address or subject).
  • Rubric synonymy (different names for the same topic).
  • Attachments without text (only images) — the model marks them as "requires expert review."

We provide handling for each of these cases. We guarantee Accuracy@1 not lower than 90% after adaptation, otherwise we will refine the model for free.

What Is Included in the Work?

  • Full audit of current routing scheme and data.
  • Development and customization of the classification model.
  • Integration with your EDMS (API, cards, statuses).
  • Vector precedent database with embeddings.
  • Analytics and monitoring dashboard.
  • Operator training and technical documentation.
  • 6 months warranty support.

Contact us for a free audit. Order a pilot project — evaluate the result on your own data.