Environment Variables

ENV flags are evaluated at runtime for all, they can be evaluated via a .env file or by adding environment variables before the runtime.

SERVER

ENVDESCRIPTION
REDIS_URLREDIS URI including port
QDRANT_URLQDRANT URI should be port on 6333
QDRANT_API_KEYAPI_KEY for qdrant
DATABASE_URLDATABASE URI for postgresql
SENDGRID_API_KEYNOT REQUIRED to be correct, used for password reset
SENDGRID_EMAIL_ADDRESSThe email address to send emails from
OPENAI_API_KEYapi key if using openai or localai
SECRET_KEYA 64 character long string used for the argon2 password hashing algorithm
SALTUsed to salt the password in the database, should be a relatively secure string
S3_ENDPOINTThe url endpoint for s3 or s3 compatible service
S3_ACCESS_KEYThe access key for s3 or s3 compatible service
S3_SECRET_KEYThe secret key for s3 or s3 compatible service
S3_BUCKETThe name of the s3 bucket to store data files
COOKIE_SECURE"true" or "false", if "true" cookies require https
ALERT_EMAILEmail to send alerts
DOCUMENT_UPLOAD_FEATURE"on" or "off" if off Documents will not be able to be uploaded from the UI
DOCUMENT_DOWNLOAD_FEATURE"on" or "off" if off Download will be disabled for documents
ONLY_ADMIN_CAN_CREATE_CARDS"on" or "off" if on only the admin user defined below will be allowed to create cards
RAG_PROMPTOPTIONAL, by default this is "Write a 1-2 sentence semantic search query along the lines of a hypothetical response to: \n\n". Feel free to change for your use-case.
N_RETRIEVALS_TO_INCLUDEHow many retrivals to fetch during RAG search
QDRANT_COLLECTIONThe qdrant collection name
ALWAYS_REQUIRE_AUTH"on" or "off" Requires that the user must be signed in to do a search. Server will return 401 on all routes except login routes
ADMIN_USER_EMAILDefault admin account email to be created
ADMIN_USER_PASSWORDDefault admin account password to be created
DUPLICATE_DISTANCE_THRESHOLDOPTIONAL, number between 0 and 1. This defaults to 0.95 if not set. We don't recommend setting it to be higher than 0.99
TIKA_URLURL for APACHE tika server that pulls text from various file types
OPENAI_BASE_URLURL for OPENAI API compatible API endpoint for text completions with streaming
EMBEDDING_SIZEDimension/size of the embeddings to be created by the text embedding model (1536 for OpenAI ada-002)
USE_EMBED_SERVER0 or 1, If 0 then the server will use the embedding server as described in EMBEDDING_SERVER_CALL
PARSER_COMMANDCommand to run for the parser script, expects a relative path from the root. May need to extend Dockerfile if script is not nodejs
EMBEDDING_SERVER_CALLRoute to call the server, with our embedding server this is http://localhost:7070/encode
MINIMUM_CARD_CHAR_LENGTHOPTIONAL, The min requirement length for a chunk to be accepted in characters. Default 0 characters
MAXIMUM_CARD_CHAR_LENGTHOPTIONAL, The largest that a chunk can be in characters. Default 29000 characters
MINIMUM_CARD_WORD_LENGTHOPTIONAL, The min requirement length for a chunk to be accepted. Default 0 words
MAXIMUM_CARD_WORD_LENGTHOPTIONAL, The largest that a chunk can be in characters. Default 5000 words

note: process takes ~7 seconds to startup after changing ENV's due to having to call yarn build to set ENV

ENVDESCRIPTION
PUBLIC_API_HOSTThe URL for the API (ex: https://api.arguflow.ai/api), must include /api
PLAUSIBLE_HOSTOPTIONAL, if you are using plausible tracking then this would be the host name of your plausible domain
PUBLIC_CREATE_EVIDENCE_FEATUREcan be "on" or "off", we recommend setting this to "off"
PUBLIC_DOCUMENT_UPLOAD_FEATUREcan be "on" or "off", we recommend setting this to "off"
PUBLIC_SEARCH_QUERIESarray of strings like ["hello world"] use for typewriter and delete effect in search bar, we recommend setting this to []
PUBLIC_LUCKY_ITEMSarray of strings like ["good", "bad"], we recommend setting to "" to disable
PUBLIC_FRONTMATTER_VALSkeys of the JSON metadata for a document chunk (aka card) that you want to display in the UI, i.e. ["author,email_sent,email_subject,email_cc]
PUBLIC_LINES_BEFORE_SHOW_MOREthis sets how many lines of a document chunk to show in results, we recommend 4
PUBLIC_SHOW_GITHUB_STARSthis determines whether or not our "star us" button will show, we recommend setting this to "off"
GITHUB_TOKENOPTIONAL, you only need this is you want our "star us" button to work
DATASETOPTIONAL, you likely want to set this to the name of your dataset i.e. "enron"
OG_DESCRIPTIONOPTIONAL, the opengraph description. Can likely set this to ""
PUBLIC_ALWAYS_REQUIRE_AUTHThis determines whether or not SSR will apply, we recommend setting this to "on"
PUBLIC_IMAGE_RANGE_START_KEYIf you have a BATES range for a given document chunk, this is the key of the JSON metadata for where that range starts, i.e. "doc_beg" . The value of the key can be anything that contains a number like MATCH00033.
PUBLIC_IMAGE_RANGE_END_KEYIf you have a BATES range for a given document chunk, this is the key of the JSON metadata for where that range ends, i.e. "doc_end" . The value of the key can be anything that contains a number like MATCH00036.
PUBLIC_DATE_RANGE_VALUEIf your document chunks, have dates, this is the key of the JSON metadata for where that date is contained, i.e. send_date. The value of the key must have a value like MM/DD/YY for it to be picked up.
PUBLIC_FILTER_ITEMSOPTIONAL, this is hard to set if you don't know what the metadata of a doc chunk looks like. Here is an example though '[{"name":"Tag Set","comboboxItems":[{"name":"email"}]},{"name":"email_cc","comboboxItems":[]},{"name":"email_from","comboboxItems":[]},{"name":"email_to","comboboxItems":[]}]'
SUGGESTED_QUERIESOPTIONAL, this can be a comma separated list of suggested searches to put on the index page.
PUBLIC_SEARCH_VOTE_FEATUREOPTIONAL, feature flags upvote/downvote buttons, this can be "on" or "off", we recommend setting this to "off"

CHAT

note: process takes ~7 seconds to startup after changing ENV's due to having to call yarn build to update ENVs

ENVDESCRIPTION
VITE_FRONTMATTER_VALSkeys of the JSON metadata for a document chunk (aka card) that you want to display in the UI, i.e. ["author,email_sent,email_subject,email_cc]
VITE_LINES_BEFORE_SHOW_MOREthis sets how many lines of a document chunk to show in results, we recommend 4
VITE_DATASETOPTIONAL, you likely want to set this to the name of your dataset i.e. "enron"
VITE_SEARCH_URLThe URL of the search UI, i.e. search.arguflow.ai
VITE_API_HOSTThe URL for the API (ex: https://api.arguflow.ai/api), must include /api
VITE_YOUTUBE_EMBED_URLOPTIONAL, if you have a demo video, you can place it here. We recommend setting to "" if anything so it disables
VITE_PLAUSIBLE_HOSTOPTIONAL, if you are using plausible tracking then this would be the host name of your plausible domain
VITE_SHOW_GITHUB_STARSThis determines whether or not it shows our "star us" button, we recommend setting it to "off"
VITE_CHAT_VOTE_FEATUREOPTIONAL, feature flags upvote/downvote buttons, this can be "on" or "off", we recommend setting this to "off"

Additional Notes

The server can also store images if you are going to use PUBLIC_IMAGE_RANGE_START_KEY and PUBLIC_IMAGE_RANGE_END_KEY, the server expects for the images to be located mounted in /app/images.

If you want S3 support for images, please reach out to us at contact@arguflow.gg or matrix and maybe open an issue on github.