Skip to content
Merged

v1.1 #118

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
158 commits
Select commit Hold shift + click to select a range
e5ea4d5
Backup script
dodekapod Sep 16, 2025
a7b5804
Fix missprint
dodekapod Sep 17, 2025
fa8f956
Fix 'include-only' logic
dodekapod Sep 19, 2025
466d50c
Script to restore backup
dodekapod Sep 19, 2025
fd65b61
Better error handling
dodekapod Sep 22, 2025
289affc
Add block
dodekapod Sep 22, 2025
fc6fd0a
Add type annotation
dodekapod Sep 22, 2025
a619d2e
fix missprint
dodekapod Sep 22, 2025
6026e8d
Check 'batch_size > 0'
dodekapod Sep 22, 2025
4ecb9e1
Fix missprint
dodekapod Sep 23, 2025
878ca8c
Backup to .xz and to STDOUT
dodekapod Sep 23, 2025
fe55478
Backup scripts
dodekapod Sep 23, 2025
af4abeb
Readme
dodekapod Sep 23, 2025
58cc585
Implementing Map & Reduce strategy
Ahmath-Gadji Sep 24, 2025
be33aa6
Allowing Map & Reduce usage from Chainlit Interface
Ahmath-Gadji Sep 24, 2025
a5b5720
Updating 'Map & Reduce' description on Chainlit
Ahmath-Gadji Sep 24, 2025
671aba0
Exit in case one of requested partitions hasn't been found
dodekapod Sep 24, 2025
e3f8f63
Backup file format
dodekapod Sep 24, 2025
98e4936
Merge pull request #84 from linagora/feat_map-reduce
Ahmath-Gadji Sep 24, 2025
b907cd7
added user and partition members tables
htagourti Sep 24, 2025
a9f2828
remove qdrant
Ahmath-Gadji Sep 25, 2025
c4118a9
refactoring indexer-ui setting using docker image from dockerhub
Ahmath-Gadji Sep 25, 2025
12d8c0d
using indexer-ui's docker image
Ahmath-Gadji Sep 26, 2025
16d320f
Quick start deployment of OpenRAG using pre-built Docker images with …
Ahmath-Gadji Sep 26, 2025
106eca7
update doc
Ahmath-Gadji Sep 26, 2025
f7d1029
Configuration for running VLLM on CPU/GPU: parameter optimization and…
Ahmath-Gadji Sep 26, 2025
4510896
update pymypdf loaders
Ahmath-Gadji Sep 30, 2025
9af50e7
update pymypdf loaders
Ahmath-Gadji Sep 30, 2025
c461def
model max len modified
Ahmath-Gadji Oct 2, 2025
974c5bd
added user access to API
htagourti Oct 2, 2025
303baab
Add 'rdb' service dependency to 'openrag' service to ensure smooth ex…
Ahmath-Gadji Oct 3, 2025
2455694
Add documentation site to openrag
Ahmath-Gadji Oct 3, 2025
c052d23
mode ./docs folder to ./src/content/docs
Ahmath-Gadji Oct 3, 2025
a0f343b
Remove .astro folder from tracking
Ahmath-Gadji Oct 6, 2025
c14781f
update gitignore
Ahmath-Gadji Oct 6, 2025
47c743c
Add backup/restore all partitions to README-backup.md
dodekapod Oct 6, 2025
2a40a5c
Merge branch 'dev' into feat-backup-restore
dodekapod Oct 6, 2025
e56f305
chore: Restart vllm only on failure
paultranvan Oct 6, 2025
7211762
Merge pull request #79 from linagora/feat-backup-restore
Ahmath-Gadji Oct 6, 2025
be80e56
Merge pull request #91 from linagora/paultranvan-patch-1
Ahmath-Gadji Oct 6, 2025
0fff0a0
file not needed anymore
Ahmath-Gadji Oct 6, 2025
d75f7e2
renaming src => docs
Ahmath-Gadji Oct 6, 2025
15f02a7
added token hashing
htagourti Oct 6, 2025
c49206c
fixed regenerate token
htagourti Oct 6, 2025
39a55ff
only filter out empty chunks
Ahmath-Gadji Oct 6, 2025
5d3594d
Improve logging during document insertion
Ahmath-Gadji Oct 6, 2025
c01fbb1
reversing the condition for better code readability
Ahmath-Gadji Oct 7, 2025
6789976
fixed exception handler serialization error in ray serve
htagourti Oct 8, 2025
26fdb06
Remove obsolete `app_state` variable from endpoints.
Ahmath-Gadji Oct 8, 2025
4de9a48
Clearing existing hydra instance to prevent "already initialized" errors
Ahmath-Gadji Oct 8, 2025
7b2673a
Move load_config outside get_vectordb_cls to load configuration once …
Ahmath-Gadji Oct 9, 2025
e6f7330
Merge pull request #96 from linagora/fix-hydra-reload-bug
Ahmath-Gadji Oct 9, 2025
5411b78
Correcting filter conditions
Ahmath-Gadji Oct 9, 2025
e12008e
Merge pull request #90 from linagora/feat-doc-website
Ahmath-Gadji Oct 9, 2025
b7787d6
docs: Add doc about auth and SQL data model
paultranvan Oct 9, 2025
4c6686b
added file copy endpoint
htagourti Oct 9, 2025
1c330bf
resolve merge conflicts
htagourti Oct 9, 2025
777d69c
Update markitdown loader +Add docx dependencies
Ahmath-Gadji Oct 9, 2025
1b59a13
Update DocLoader
Ahmath-Gadji Oct 9, 2025
2aa9079
CI pipeline: index, backup, restore
dodekapod Oct 9, 2025
f2213b0
Rename MarkItDownLoader to DocxLoader
Ahmath-Gadji Oct 9, 2025
f4cce2e
vllm: don't restart, don't use V0
dodekapod Oct 9, 2025
5c80663
Patch vllm to v0.9.2 (it works fine with ibm-granite/granite-embeddin…
dodekapod Oct 9, 2025
fc313f0
Merge branch 'dev' into feat_quick_start
Ahmath-Gadji Oct 9, 2025
da7b48d
update gitignore
Ahmath-Gadji Oct 9, 2025
ffe41e2
trigger PR update
Ahmath-Gadji Oct 9, 2025
d9ce52c
update documentation
Ahmath-Gadji Oct 9, 2025
802a01e
Stop pipeline in case of problem with vllm
dodekapod Oct 9, 2025
2b0e987
Fail explicitly
dodekapod Oct 9, 2025
8a1800f
Add requirements for data_indexer.py
dodekapod Oct 9, 2025
3c9e599
vllm: turn off V1
dodekapod Oct 9, 2025
9dc7ff4
Remove redundant files
dodekapod Oct 10, 2025
28b37e8
Permissions/contents : read -> write
dodekapod Oct 10, 2025
ea08df2
Create release always, just to test
dodekapod Oct 10, 2025
1ce74fc
Create release always, just to test (again)
dodekapod Oct 10, 2025
aa2a894
Permissions/contents (ray) : read -> write
dodekapod Oct 10, 2025
372112b
Version: add "-ray" postfix
dodekapod Oct 10, 2025
be759df
Restore conditions
dodekapod Oct 10, 2025
7fbe082
Rename
dodekapod Oct 10, 2025
bc60e89
Cleanup
dodekapod Oct 10, 2025
d68a7ad
Don't need extended kv cache?
dodekapod Oct 10, 2025
85dedbb
Restore reranker
dodekapod Oct 10, 2025
28824f0
Remove the unnecessary step.
dodekapod Oct 10, 2025
46f1a4c
Rename everything
dodekapod Oct 10, 2025
1fe1542
Moving `data_model.md` & `user_auth.md` docs to the `documentation` d…
Ahmath-Gadji Oct 10, 2025
6c46ac0
Replace empty files
dodekapod Oct 13, 2025
6d7aa54
only delete user owned partitions
htagourti Oct 14, 2025
89ee733
updated users schema
htagourti Oct 14, 2025
9d5e0a3
changed external_user_id field name
htagourti Oct 14, 2025
fa43993
removed useless import
htagourti Oct 14, 2025
e2670a1
fixed super admin partition access problem
htagourti Oct 14, 2025
50871a6
New endpoint to retrieve the authenticated user's information — prima…
Ahmath-Gadji Oct 14, 2025
35085da
Allow access to Chainlit routes (`/chainlit`). Enable passing the tok…
Ahmath-Gadji Oct 14, 2025
b3d6073
Use `RoleType` instead of `str`. This ensures that invalid roles trig…
Ahmath-Gadji Oct 14, 2025
07c7a62
fixed middleware when AUTH_TOKEN None
htagourti Oct 14, 2025
2c81a80
Update Chainlit integration and documentation to support the new auth…
Ahmath-Gadji Oct 14, 2025
45dc193
Merge branch 'feat-users' of github.com:linagora/openrag into feat-users
Ahmath-Gadji Oct 14, 2025
428dca7
remove email checks from chainlit authentification
Ahmath-Gadji Oct 14, 2025
0f87bfe
regen admin token if env changes
htagourti Oct 14, 2025
f5a70b5
update documentation
Ahmath-Gadji Oct 14, 2025
894e471
get all details of a partition not just the name as it's necessary in…
Ahmath-Gadji Oct 14, 2025
3e58b58
indexerui updated
Ahmath-Gadji Oct 14, 2025
51b906f
Merge branch 'feat-users' of github.com:linagora/openrag into feat-users
Ahmath-Gadji Oct 14, 2025
dcfd643
use form instead of query param for write endpoints
htagourti Oct 14, 2025
7a03f43
Merge pull request #98 from linagora/fix-markitdown-docx
Ahmath-Gadji Oct 15, 2025
bbd2df5
Merge pull request #93 from linagora/fix-bug-86
Ahmath-Gadji Oct 15, 2025
ae300d8
update indexerui
Ahmath-Gadji Oct 15, 2025
40c3ef4
Update docker compose with new indexer-ui version
Ahmath-Gadji Oct 15, 2025
bdb9f08
update docs
Ahmath-Gadji Oct 15, 2025
bd0f310
Update docker compose with the latest indexer-ui version
Ahmath-Gadji Oct 15, 2025
a910500
Update quick_start doc
Ahmath-Gadji Oct 15, 2025
6162bc2
block default admin deletion
htagourti Oct 16, 2025
4b4c43a
fixed file delete error
htagourti Oct 16, 2025
055b112
Generate / replace embedding (#87)
dodekapod Oct 16, 2025
ea029e4
raise 404 on delete non existant partition
htagourti Oct 16, 2025
bda42c7
feat: Add log level in .env config
paultranvan Oct 16, 2025
5df8e91
Merge branch 'dev' into feat-users
htagourti Oct 16, 2025
5ed72af
updated schema doc
htagourti Oct 16, 2025
bdb3d30
Merge pull request #92 from linagora/feat-users
htagourti Oct 16, 2025
7ca29eb
fixed copy endpoint jsonresponse
htagourti Oct 16, 2025
da771a8
fixed vectordb restart errors
htagourti Oct 16, 2025
19e7358
Merge pull request #100 from linagora/fix-nightly
EnjoyBacon7 Oct 16, 2025
70e4e24
correct /partition in order for super admin to list them instead of j…
Ahmath-Gadji Oct 16, 2025
879d48f
remove prompts not used prompt folders
Ahmath-Gadji Oct 16, 2025
c9da430
refacto prompts
Ahmath-Gadji Oct 17, 2025
a869826
refacto retriever
Ahmath-Gadji Oct 17, 2025
297e557
comment warning logging to silence loguru error
Ahmath-Gadji Oct 17, 2025
4786e59
solve merge issues
Ahmath-Gadji Oct 17, 2025
5abbee6
set max_model_len to lower values for low memory consumption
Ahmath-Gadji Oct 17, 2025
28412ac
Merge pull request #99 from linagora/feat_quick_start
Ahmath-Gadji Oct 17, 2025
6ab030d
fix: Do not raise an exception when deleted file is not found
paultranvan Oct 17, 2025
5d6f821
Merge branch 'dev' into enhance-prompts
Ahmath-Gadji Oct 20, 2025
2dbbcf9
Merge branch 'dev' into log-levels
EnjoyBacon7 Oct 20, 2025
dd9ba8f
Merge pull request #104 from linagora/log-levels
EnjoyBacon7 Oct 20, 2025
ca4b081
Merge pull request #97 from linagora/ci-indexing-backup-restore
EnjoyBacon7 Oct 20, 2025
24c2acc
Merge pull request #106 from linagora/exception-on-delete
EnjoyBacon7 Oct 20, 2025
22fd100
Added macOS quickstart
EnjoyBacon7 Oct 20, 2025
c1af31c
- Use structured output prompting to ensure consistent LLM summaries …
Ahmath-Gadji Oct 20, 2025
f4150cc
Improved sys prompt
Ahmath-Gadji Oct 20, 2025
e6e39e9
Merge pull request #105 from linagora/refacto-prompt
EnjoyBacon7 Oct 21, 2025
0e3e0fb
fixed user access to /tasks
htagourti Oct 21, 2025
ec76124
Merge branch 'dev' into macOS_docs
EnjoyBacon7 Oct 21, 2025
98709d5
Fix CI (#108)
dodekapod Oct 21, 2025
3de4ac7
Improve chunk contextualisation with more previous chunks and better …
Ahmath-Gadji Oct 21, 2025
3b3fed0
Use prompts from "example1"
dodekapod Oct 21, 2025
05055e2
Merge pull request #109 from linagora/macOS_docs
EnjoyBacon7 Oct 21, 2025
8b1874b
update chunk contextualizer prompt
Ahmath-Gadji Oct 22, 2025
a70bb11
Merge branch 'dev' into refacto-retriever
Ahmath-Gadji Oct 22, 2025
ddb9284
Merge pull request #114 from linagora/refacto-retriever
Ahmath-Gadji Oct 22, 2025
c73465b
Merge branch 'enhance-prompts' into dev
Ahmath-Gadji Oct 22, 2025
bd5a95d
Merge pull request #112 from linagora/fix-tasks-permissions
Ahmath-Gadji Oct 22, 2025
e35dcd9
Merge branch 'dev' of github.com:linagora/openrag into dev
Ahmath-Gadji Oct 22, 2025
df0c3f1
fix pptx bug
Ahmath-Gadji Oct 22, 2025
eb5ea03
Wait for OpenRAG to start
dodekapod Oct 22, 2025
0fbf6f2
Print queue/info and queue/tasks
dodekapod Oct 22, 2025
783bdf6
- tasks
dodekapod Oct 22, 2025
2a0897a
Merge pull request #117 from linagora/fix-ci-wait-for-openrag
EnjoyBacon7 Oct 22, 2025
a624d98
Merge pull request #119 from linagora/fix-pptx
EnjoyBacon7 Oct 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
26 changes: 16 additions & 10 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -15,22 +15,26 @@ VLM_MODEL=
## To enable API HTTP authentication via HTTPBearer
# AUTH_TOKEN=sk-openrag-1234

# SAVE_UPLOADED_FILES=true # usefull for chainlit source viewing
# SAVE_UPLOADED_FILES=true # usefull for chainlit (chat interface) source viewing

# Set to true, it will mount chainlit chat ui to the fastapi app (Default: true)
## WITH_CHAINLIT_UI=true

# EMBEDDER
EMBEDDER_MODEL_NAME=jinaai/jina-embeddings-v3 # or any other embedder from huggingface compatible with vllm
EMBEDDER_MODEL_NAME=jinaai/jina-embeddings-v3 # or other embedder from huggingface compatible with vllm
# EMBEDDER_BASE_URL=http://vllm:8000/v1
# EMBEDDER_API_KEY=EMPTY


# RETRIEVER
# RETRIEVER_TOP_K=20 # number of top documents to retrieve, before reranking (lower (~10) is faster on CPU | on GPU, you can try to increase the value (~40) ).

# RERANKER
RERANKER_ENABLED=true
RERANKER_ENABLED=true # deactivate the reranker if your CPU is not powerful enough
RERANKER_MODEL=Alibaba-NLP/gte-multilingual-reranker-base # or jinaai/jina-reranker-v2-base-multilingual

# Prompts
PROMPTS_DIR=../prompts/example3_en # you can change it to ../prompts/example3 for french prompts
PROMPTS_DIR=../prompts/example1

# Ray
RAY_DEDUP_LOGS=0 # turns off ray log deduplication that appear across multiple processes
Expand All @@ -40,11 +44,13 @@ RAY_ENABLE_UV_RUN_RUNTIME_ENV=0 # critical with the newest version of UV

# Indexer UI
## 1. replace X.X.X.X with localhost if launching local or with your server IP
## 2. APP_PORT with your FastAPI port (8080 by default)
## 3. Base URL of the Indexer UI (required to prevent CORS issues). Replace INDEXERUI_PORT with its value
## 4. Base URL of your FastAPI backend. Used by the frondend. Replace APP_PORT with the actual port number of your FastAPI backend
## 2. Used by the frondend. Replace APP_PORT (8080 by default) with the actual port number of your FastAPI backend
## 3. Replace INDEXERUI_PORT with its value in the INDEXERUI_URL variable

VITE_INCLUDE_CREDENTIALS=false # set true if fastapi authentification is enabled
INDEXERUI_PORT=8060 # Port to expose the Indexer UI (default is 3042)
INCLUDE_CREDENTIALS=false # set true if fastapi authentification is enabled, i.e AUTH_TOKEN is set
INDEXERUI_PORT=8060 # Port to expose the Indexer UI (default is 3042)
INDEXERUI_URL='http://X.X.X.X:INDEXERUI_PORT'
VITE_API_BASE_URL='http://X.X.X.X:APP_PORT'
API_BASE_URL='http://X.X.X.X:APP_PORT' # Base URL of your FastAPI backend.

# LOGGING
LOG_LEVEL=DEBUG # See possible values https://loguru.readthedocs.io/en/stable/api/logger.html
93 changes: 93 additions & 0 deletions .github/workflows/astro.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
# Sample workflow for building and deploying an Astro site to GitHub Pages
#
# To get started with Astro see: https://docs.astro.build/en/getting-started/
#
name: Deploy Astro site to Pages

on:
# Runs on pushes targeting the default branch
push:
branches: ["main"]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false

env:
BUILD_PATH: "." # default value when not using subfolders
# BUILD_PATH: subfolder

jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Detect package manager
id: detect-package-manager
run: |
if [ -f "${{ github.workspace }}/yarn.lock" ]; then
echo "manager=yarn" >> $GITHUB_OUTPUT
echo "command=install" >> $GITHUB_OUTPUT
echo "runner=yarn" >> $GITHUB_OUTPUT
echo "lockfile=yarn.lock" >> $GITHUB_OUTPUT
exit 0
elif [ -f "${{ github.workspace }}/package.json" ]; then
echo "manager=npm" >> $GITHUB_OUTPUT
echo "command=ci" >> $GITHUB_OUTPUT
echo "runner=npx --no-install" >> $GITHUB_OUTPUT
echo "lockfile=package-lock.json" >> $GITHUB_OUTPUT
exit 0
else
echo "Unable to determine package manager"
exit 1
fi
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: "20"
cache: ${{ steps.detect-package-manager.outputs.manager }}
cache-dependency-path: ${{ env.BUILD_PATH }}/${{ steps.detect-package-manager.outputs.lockfile }}
- name: Setup Pages
id: pages
uses: actions/configure-pages@v5
- name: Install dependencies
run: ${{ steps.detect-package-manager.outputs.manager }} ${{ steps.detect-package-manager.outputs.command }}
working-directory: ${{ env.BUILD_PATH }}
- name: Build with Astro
run: |
${{ steps.detect-package-manager.outputs.runner }} astro build \
--site "${{ steps.pages.outputs.origin }}" \
--base "${{ steps.pages.outputs.base_path }}"
working-directory: ${{ env.BUILD_PATH }}
- name: Ignore underscore CSS
run: |
touch dist/.nojekyll
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: ${{ env.BUILD_PATH }}/dist

deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
needs: build
runs-on: ubuntu-latest
name: Deploy
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
6 changes: 3 additions & 3 deletions .github/workflows/build_dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
build-and-push-dev-image:
runs-on: ubuntu-latest
permissions:
contents: read
contents: write
packages: write
attestations: write
steps:
Expand Down Expand Up @@ -153,7 +153,7 @@ jobs:
build-and-push-dev-image-ray:
runs-on: ubuntu-latest
permissions:
contents: read
contents: write
packages: write
attestations: write
steps:
Expand Down Expand Up @@ -182,7 +182,7 @@ jobs:
else
VERSION="dev-${DATE}-${SHORT_SHA}"
fi
echo "version=${VERSION}" >> $GITHUB_OUTPUT
echo "version=${VERSION}-ray" >> $GITHUB_OUTPUT

- name: Extract metadata (tags, labels) for Docker
id: meta
Expand Down
54 changes: 54 additions & 0 deletions .github/workflows/data/simplewiki-500/0.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
Zero (0) is a unique number. If there are zero things, then there is nothing at all. For example, if a person has zero hats, that means they do not have any hats. The Roman numeral for zero is Ↄ.
Symbol.
The symbol for the number zero is "0". It is the additive identity of common numbers. This means that if a number is added to 0, then that number would remain unchanged.
Mathematics.
3 + 0 = 3
3 − 0 = 3
0 − 3 = −3
3 × 0 = 0
0 ÷ 3 = 0
3 ÷ 0 has an undefined answer.
0 ÷ 0 has an undefined answer.
The following table includes all of the above examples along with other operations in a condensed, generalized form (where "x" represents any number).
History.
The Bakhshali manuscript, discovered in 1881 near Peshawar has been identified as the earliest known text featuring the zero symbol (0), dating back to the 3rd or 4th century CE. The ancient Greeks did not use zero as a number, because they thought numbers represented shapes: To the [ancient] Greeks, who looked upon mathematics from a geometric perspective, zero seemed absurd or unnecessary. When numbers or unknowns represented lengths, and squares represented areas, zero had no place. Why solve a problem that did not exist? If a length is zero, there is no line; if an area is zero, there is no object.The idea of zero was first thought about in Babylon, Indian subcontinent and in Central America at different times. Some places and countries did not know about zero, which may have made it harder for those people to do mathematics. For example, the year after 1 BC is AD 1 (there is no year zero). In India, zero was theorized in the seventh century by the Mathematician Aryabhata.
Over hundreds of years, the idea of zero was passed from country to country Greece, Persia and the Arab world. The Europeans learned about zero from the Arabs, and stopped using Roman math. This is why numbers are called "Arabic numerals".
Computer science.
Zero is almost never used as a place number (Ordinal number). This means that it is not used like 1, 2, or 3 to indicate the order, or place, of something, like 1st, 2nd, or 3rd. An exception to this is seen in many programming languages. Some other things about zero:
Any number divided by itself equals one, except if that number is zero. In symbols:
0 ÷ 0 = undefined
Other applications.
In time, zero means "now". For example, when a person is counting down the time to the start of something, such as a foot race or when a rocket takes off, the count is: "three, two, one, zero (or "go")". Zero is the exact time of the start of the race or when the rocket takes off into the sky.
0 as a number.
Definition.
0 is the integer that precedes the positive 1, and follows −1. In most numerical systems, 0 was identified before the idea of "negative integers" was accepted. It means "courageous one" in hieroglyphics.
Zero is a number which means an amount of null size; that is, if the number of brothers is zero, that means the same thing as having no brothers, and if something has a weight of zero, it has no weight. If the difference between the numbers of pieces in two piles is zero, it means the two piles have an equal number of pieces.
Before counting starts, the result can be assumed to be zero; that is the number of items counted before one counts the first item, and counting the first item brings the result to one. And if there are no items to be counted, zero remains the final result.
Debates.
Is zero a number ?
While mathematicians all accept zero as a number, some non-mathematicians would say that zero is not a number, arguing that one cannot have zero of something. Others say that if one has a bank balance of zero, one has a specific quantity of money in that account, namely none. It is that latter view which is accepted by mathematicians and most others.
Is zero a natural number?
A debate asking if 0 is or not a natural number has been discussed over time.
The Encyclopædia Britannica defines 0 as a natural number. Wolfram MathWorld´says it isn't. The "On-Line Encyclopedia of Integer Sequences" objects. "The Princeton Companion to Mathematics" defines 0 as a natural number.
Although the International Baccalaureate (IB) mathematics curriculum sees 0 as a natural number, the "Oxford Dictionary" states,
<templatestyles src="Template:Blockquote/styles.css" />a positive whole number such as 1, 2, or 3, and sometimes also zero.
As year.
There was no year zero between 1 BC and 1 AD. More specifically, almost all historians leave out the "year zero" from the proleptic proleptic Gregorian and Julian calendar, but astronomers include it in these same calendars. However, the phrase "Year Zero" may be used to describe any event considered so important, that someone might want to start counting years all over again from zero.
0 as a numeral.
The modern numeral 0 is normally written as a circle or (rounded) rectangle. In old-style fonts with text figures, 0 is usually the same height as a lowercase x.
On the seven-segment displays of calculators, watches etc., 0 is usually written with six-line segments, though on some historical calculator models, it was written with four line segments. The four-segment 0 is not common. The "number" zero, as in the "zero brothers" example above, is not the same as the "numeral" or "digit" zero, used in numeral systems using positional notation. Successive positions of digits have higher values, so the digit zero is used to skip a position and give appropriate value to the preceding and following digits. A zero digit is not always necessary in a different positional number system. Something called bijective numeration is a possible example of a system without zeroes.
As numerical digit.
0 is also used as a numerical digit used to represent that number in numerals. It is used to hold the place of that digit, because correct placing of digits affects a numeral's value. Examples:
Telling zero and the letter O apart.
The number 0 and the letter O are both round, though of different widths. The difference is important on a computer. For one thing, a computer will not do arithmetic with the letter O, because it does not know that it should have been a zero.
The oval-shaped zero and circular letter O came into use together on modern character displays. The zero with a dot in the centre seems to have begun as a choice on IBM 3270 controllers (this has the problem that it looks like the Greek letter theta).
The slashed zero, looking like the letter O with a diagonal line drawn inside it, is used in old-style ASCII graphic sets that came from the default typewheel on the well-known ASR-33 Teletype. This format causes problems because it looks like the symbol formula_1, representing the empty set, as well as for certain Scandinavian languages which use Ø as a letter.
The rule which has the letter O with a slash and the zero without was used at IBM and a few other early mainframe makers; this is even more of a problem for Scandinavians, because it looks like two of their letters at the same time. Some Burroughs/Unisys computers display a zero with a backwards slash.
Yet, another convention common on early line printers left zero without any extra dots or slashes but added a tail or hook to the letter O so that it resembled an inverted Q or cursive capital letter O.The letters used on some European number plates for cars make the two symbols look different. This is done by making the zero rather egg-shaped and the O more circular, but most of all by cutting open the zero on the upper right side, so the circle is not closed any more (as in ). The style of letters chosen is called "" (abbr.: "FE Schrift"), meaning "script which is harder to falsify".
However, those used in the United Kingdom do not make the letter o and the number 0 look different from each other, because there can never be any mistake if the letters are correctly spaced. In paper writing, one does not have to make the 0 (zero) and O (letter O) look different at all. Or you may add a slash across the zero in order to show the difference.
Zeroes of a function.
If the function "f"("x") = 0, then "x" is called a zero (or root) of the function "f". For example, if the function "f"("x") is "x"2 − 1, then the zeroes of the function are +1 and −1, because "f"(+1) = (+1)2 − 1 = 0, and "f"(−1) = (−1)2 − 1 = 0.
Zeroes of a function are used because they are another way to talk about solving an equation, which is a main goal in algebra. If we want to solve an equation like "x"2 = 1, then we can subtract the right-hand side of the equation from both sides, in this case 1. Whatever we get on the left-hand side, in this case "x"2 − 1, can be called a function "f"(x). The right-hand side has to be zero, because we subtracted it from itself. So "f"(x) = 0. Finding the zeroes of this function is the same as solving this equation. In the paragraph before, the zeroes of this function are +1 and −1, so they are the solutions of this equation. We got this equation by subtracting the same thing from both sides, so we also have solutions to the equation we started with, in this case "x"2 = 1. More generally, if we could find zeroes of functions, we could solve any equation.
References.
Citations.
<templatestyles src="Reflist/styles.css" />
8 changes: 8 additions & 0 deletions .github/workflows/data/simplewiki-500/1 (number).txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
One (1) is the first natural number, followed by two. The Roman numeral for one is I.
Mathematics.
In mathematics, the number one is the multiplicative identity. It is also the only number for which these special facts are true:
In mathematics, 0.999... is a repeating decimal that is equal to 1. Many proofs have been made to show this is correct.
Computer science.
One is important for computer science, because the binary numeral system uses only ones and zeroes to represent numbers. In machine code and many programming languages, one means "true" (or "yes") and zero means "false" (or "no").
References.
"This about can be made longer. You can help Wikipedia by [ adding to it]".
15 changes: 15 additions & 0 deletions .github/workflows/data/simplewiki-500/A.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
A is the first letter of the English alphabet. The small letter, a, is used as a lowercase vowel.
Overview.
When it is spoken, ā is said as a long a, a diphthong of ĕ and y. A is similar to Alpha of the Greek alphabet. That is not surprising, because it means the same sound. "Alpha and Omega" (the last letter of the Greek alphabet) means from beginning to the end. In musical notation, the letter A is the symbol of a note in the scale, below B and above G.
A is the letter that was used to represent a team in an old TV show, The A-Team. A capital a is written "A". Use a capital A at the start of a sentence if writing. A is also a musical note, sometimes referred to as "La".
Origin.
The letter 'A' was in the Phoenician alphabet's aleph. This symbol came from a simple picture of an ox head.
This Phoenician letter helped make the basic blocks of later types of the letter. The Greeks later modified this letter and used it as their letter alpha. The Greek alphabet was used by the Etruscans in northern Italy, and the Romans later modified the Etruscan alphabet for their own language.
Using the letter.
The letter A has six different sounds. It can sound like æ, in the International Phonetic Alphabet, such as the word "pad". Other sounds of this letter are in the words "father", which developed into another sound, such as in the word "ace".
Use in mathematics.
In algebra, the letter "A" along with other letters at the beginning of the alphabet is used to represent known quantities.
In geometry, capital A, B, C etc. are used to label line segments, lines, etc. Also, A is typically used as one of the letters to label an angle in a triangle.
Its letter shape is referred to abstractly in Sir William Vallance Douglas Hodge's 5th postulate, the basis for, as one of the Millennium Prize Problems, the Hodge Conjecture.
References.
<templatestyles src="Reflist/styles.css" />
4 changes: 4 additions & 0 deletions .github/workflows/data/simplewiki-500/Abbreviation.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
An abbreviation is a shorter way to write a word or phrase. People use abbreviations for words that they write a lot. The English language occasionally uses the apostrophe mark ' to show that a word is written in a shorter way, but some abbreviations do not use this mark. More often, they use periods, especially the ones that come from the Latin language. Common Latin abbreviations include i.e. [id est] "that is", e.g. [exempli gratia] "for example", and et al. [et alia] "and others".
Some new abbreviations have been created by scientists, by workers in companies and governments, and by people using the Internet.
People often think words are abbreviations when in fact they are acronyms.
Here are examples of common acronyms: The word "radar" is an acronym for "Radio Detection and Ranging". The name of the large computer company IBM comes from the words "International Business Machines". The name of the part of the United States government that sends rockets into outer space is NASA, from the words "National Aeronautics and Space Administration". When people using the Internet think that something is very funny, they sometimes write "LOL" to mean "Laughing Out Loud". People sometimes write "ASAP" for "As Soon As Possible".
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
The Abrahamic religions, are a group of religious communities of faith that claim descent from the religion of the ancient Israelites and the worship of the God of Abraham. The Abrahamic religions are monotheistic. The term derives from patriarch Abraham, a major biblical figure from The Hebrew Bible. The major Abrahamic religions are Christianity, Islam, Judaism and the Bahá'í Faith.
Loading