Requirements
- Omeka Classic 3.1 or later (built for 3.2.2).
- PHP 8.1 or later, with the cURL and OpenSSL extensions, and a generous
memory_limitfor the PHP command line that runs background jobs (the word-level data of a multi-hour interview is a few megabytes). - Omeka's background jobs. Processing runs in a long-running job, so it is not cut off by web timeouts. Omeka starts it with its PHP command-line program, found by itself or set as
background.php.pathinapplication/config/config.ini. - ffmpeg and ffprobe on the server, for video, for recordings over the provider's upload limit, and for exact duration-based cost estimates. Audio works without them; see Configuration.
Installing
- Copy the
OralArchivistfolder into your Omekaplugins/directory. - Sign in as a Super User, go to Plugins and click Install next to Oral Archivist.
- Open Oral Archivist > Settings, choose the providers, paste an OpenAI API key and save. Then click Refresh model list and choose a language model: the list is fetched from the provider.
The plugin installs with the mock provider selected. It produces a deterministic fake transcript with chapters at no cost, so you can walk through the whole workflow before switching to OpenAI. See Configuration.
An Oral Archivist entry appears in the admin menu, with a badge counting the interviews waiting for review.
Keys in config.ini
The OpenAI API key is stored encrypted, with a key derived from the database credentials in db.ini. A host can instead set the values in application/config/config.ini; they then override the settings and are never shown:
oral_archivist.openai_api_key = "sk-..."
oral_archivist.openai_base_url = "https://api.openai.com/v1"
oral_archivist.encryption_key = "a-long-random-string"
If the site moves to other database credentials, a key saved in the settings can no longer be read; the settings page says so, and you enter it again.
Uninstalling
Uninstalling takes published transcripts out of the site search, then drops the plugin's tables (transcripts, chapters, topics, speakers and footnotes) and deletes its settings. Files and items are untouched. Summaries already written into an item's metadata stay there, as ordinary metadata; unpublish interviews first if you want them removed.