Description of functional characteristics

1. General information

ParameterValue
NameParsewise
RightsholderIndividual entrepreneur Ruslan Khuvazhievich Krylov
Purposebuilding and running language-model assistants that work in the cloud or inside the customer's own perimeter
Usersemployees of an organisation who set up and fill projects; customers and employees who talk to the assistant
Deliveryinstallation in the customer's infrastructure or access to the rightsholder's cloud installation
Interface languagesRussian, English

Parsewise is software for building language-model assistants. For every business task a separate project is set up in the dashboard, with its own content, its own access rights and a persona description that sets the assistant's role, tone and the limits of its answers. One installation serves both the customer on a website or in a personal account and the employee on the intranet or in support.

The software talks to the language model through an OpenAI-compatible API. The rightsholder's cloud installation uses models of the Yandex AI Studio service; in an installation inside the customer's perimeter the customer chooses and hosts the model. The embedding model is part of the delivery and works without calling external resources.

2. Scope of application

ChannelWho asksTypical tasks
Websitecustomerchoosing a product or service, terms, calculations
Personal accountcustomerproduct operations, requests, applications
Intranetemployeeregulations, reference information, HR and IT requests
Support and front officeoperator, branch employeea hint from the regulations during a call, equipment diagnostics

The assistant can work under the customer's brand: the name, portrait, colours, theme and position of the widget button are set in the project. The project page can open on the customer's own domain: ownership of the domain is confirmed with a DNS record, after which routing and the TLS certificate are configured automatically.

3. Functional characteristics

3.1. Project

A project is a separate perimeter inside one installation, created in the dashboard. No separate infrastructure is needed for each task: an employee of the relevant department sets up a project, fills it and gets a working assistant.

ComponentContent
Dataknowledge base, product catalogue, profile catalogue, skills and connectors, dialogues, settings — isolated from other projects
Personaname, portrait, answer rules: tone, style, audience, limits
Accessparticipant roles, invitations, sign-in with a corporate account
Channelsembeddable widget, project page, dashboard, API

3.2. Content

EntityWays to loadMatching with existing records
Knowledge base filesdragging files into the dashboard, feed by URLby file name
Product cataloguemanually, CSV, XLSX, XLS, XML, YML, YAML, JSON file, feed by URL, APIby SKU
Profile cataloguemanually, CSV, XLSX, XLS, XML, YML, YAML, JSON file, feed by URLby external code

A knowledge base file feed comes in four kinds: a website crawl (by sitemap.xml or robots.txt, without them a breadth-first crawl), object storage (bucket listing), a web server directory autoindex, and a manifest with a list of links. The kind is detected automatically or set explicitly. Feeds are refreshed daily and on request.

Catalogue fields are mapped automatically with the language model: from a source of arbitrary structure the software picks out meaningful attributes and drops service ones. The structure of the source does not have to be described by hand.

3.3. Sources and formats

CategoryFormatsProcessing
DocumentsPDF, DOCX, XLSX, PPTX, TXT, MD, HTML, CSV, JSONtext extraction
AudioMP3, WAV, OGG, FLAC, M4A, WMA, AAC, OPUSspeech recognition
VideoMP4, AVI, MOV, WMV, FLV, WEBM, MKV, M4V, MPG, MPEGspeech recognition from the audio track
Images and other filesany format except executables and scriptsstored without indexing

Speech in Russian and English is recognised by the Yandex SpeechKit service. If the service is not connected, audio and video are stored without indexing.

LimitDefault value
File uploaded through the dashboardup to 50 MB
File received from a feedup to 100 MB
Total size of project files10 GB
Feed from a file directoryup to 1,000 files
Website crawlup to 10,000 pages from the sitemap, up to 400 pages in a breadth-first crawl
PDFfirst 50 pages
PPTXfirst 30 slides
XLSXup to 5 sheets and up to 100 rows per sheet
CSVup to 100 rows
Text of one documentup to 100,000 characters
Audio and the audio track of a videoabout 15 minutes
Files attached by the user to a questionup to 10 files of 10 MB each, if allowed in the project settings

3.4. Building an answer

The assistant finds information in the project's knowledge base and catalogues by semantic similarity to the request and streams the answer. An answer can contain text, product cards and profile cards, skill cards and panels, and results of connector tool calls. Attaching the knowledge base files the answer relies on is enabled in the project settings and is off by default.

If the user asks for an operator, the assistant can stop so that an operator joins the dialogue; the stop is enabled in the project settings. A project participant can switch the assistant off in a single dialogue by hand.

3.5. Skills and connectors

A skill is a package in the .skill format with an instruction, trigger phrases and an interface (a card in the answer feed, a panel). The package is added to a project by dragging the file into the dashboard; interface templates are checked and sanitised on upload. Candidate skills are selected by the semantic similarity of the request to the trigger phrases, not by keywords.

A connector is a package of the same format without an interface that gives the assistant access to tools of external systems through Model Context Protocol (MCP) servers or calls to their APIs. One package can combine a skill interface and its own connectors, and then the scenario and the connection travel as one file. Connector authorisation secrets are kept in the project on the server and are not passed to the browser.

Skills are called in two ways: through the language model's function-calling mechanism and by parsing the model's answer. The second way makes it possible to call skills on models that do not support function calling; connector tools are called through function calling.

3.6. Analytics and accounting

A chat, or dialogue, is the user's conversation with the assistant; the software splits a chat into threads — stretches of the conversation about one user question, which the "Questions" block of the dashboard calls branches.

MechanismContent
Topic treea nested taxonomy of requests; subtopics are separated out automatically as requests accumulate, without manual labelling
Questionstypical questions collected from the flow of requests, with a generalised answer; the period is a day, week, month, quarter, half-year or year
Ratingsfor a dialogue as a whole — from 1 to 5 stars with a comment; for a single answer — on the scale "Bad", "Average", "Good"
Accountingby user seats (project participants) and by resolved questions of visitors and customers, separately or together
Exportthreads are exported as a CSV table: topic, question, answer, rating, status, number of messages, creation and closing dates

3.7. Access and protection

Project roleRights
Ownerfull access to all project functions, transfer of ownership
Administratorfull access to the project
Editormanaging content and assistant settings: persona, skills, connectors, widget; viewing reports
Viewerviewing content and reports
Guestonly their own dialogues with the assistant

Sign-in to the dashboard is by email address and password with address confirmation, through Yandex ID or VK ID, and through a corporate identity provider over OpenID Connect (for example, Keycloak or ADFS); the user is sent to the corporate sign-in by the domain of their email. A participant is invited by a link or by email; the role is set in the invitation and can be changed later.

In the widget the user talks anonymously or is identified with a signed token issued by the customer's website server with the project key or by the corporate identity provider. A project can be limited to identified users only and to a list of domains on which the widget may be placed.

The API is available with tokens of the "Viewer" role (dialogue and search) or the "Editor" role (also product management); a token is shown once, when it is created. Uploading executables and scripts is forbidden. The server container runs as an unprivileged user.

Knowledge base files and dialogue attachments are kept in object storage as private objects: they do not open at a permanent address. To a project participant and a widget user the software issues a signed link to the file with a limited lifetime — by default no more than an hour.

4. Software components

ComponentPurposeTechnology
API serverreceiving requests, authentication, authorisation, search, building the answer, streamingPython 3.12, FastAPI
Queue workerindexing the knowledge base, crawling sources and feeds, text extraction, speech recognitionPython 3.12, Celery
Schedulerperiodic tasks: refreshing feeds, building topics and questionsPython 3.12, Celery
Embedding service, indexingbuilding document vectorsCPU inference server, model inside the image
Embedding service, queriesbuilding the query vector, a separate poolCPU inference server, model inside the image
Dashboardemployee web interface; the API server address is set at start-up, without a rebuildTypeScript, React, Next.js, Node.js 24
Widgetembeddable chat interface; the API server address is given in the embedding configurationTypeScript, isolated Shadow DOM

Storage: the main PostgreSQL database for business entities, a separate PostgreSQL vector database with the pgvector extension (1024 dimensions, cosine distance), Redis for cache and queues, object storage for files.

5. Operating conditions

ParameterValue
Computer typex86-64 server
Operating systemLinux; components are delivered as containers
OrchestrationKubernetes (run in production on version 1.32)
StoragePostgreSQL with the pgvector extension; Redis; S3-compatible object storage
Language modelOpenAI-compatible API
MailSMTP relay for address confirmation and invitations
Internet accessnot needed when the language model is hosted inside the customer's perimeter, except for speech recognition in audio and video (Yandex SpeechKit) and sign-in through Yandex ID and VK ID, if these functions are on
Programming languagesPython, TypeScript, JavaScript

6. Rightsholder details

ParameterValue
RightsholderIndividual entrepreneur Ruslan Khuvazhievich Krylov
INN (taxpayer number)772373909220
OGRNIP (state registration number)322774600593457
Technical supporthelp@parsewise.ru
Pricinghttps://parsewise.ru/pricing
Privacy policyhttps://parsewise.ru/policy/privacy
Public offerhttps://parsewise.ru/policy/offer
GET STARTED

Test it on your own data

Upload your own documents and catalogue — then ask the assistant the questions people ask you. That is the only test that means anything.