---
title: PaperSeek
canonical_url: "https://www.modelscope.cn/studios/HongMingfeng/PaperSeek"
md_url: "https://www.modelscope.cn/studios/HongMingfeng/PaperSeek.md"
repository: HongMingfeng/PaperSeek
chinese_name: "PaperSeek - 使用自然语言检索文献"
last_updated: 2026-06-23
sdk_type: docker
sdk_version: 6.17.3
downloads: 0
stars: 9
---

# PaperSeek

> PaperSeek - HongMingfeng 在 ModelScope 创建的在线 Demo。PaperSeek 是一个面向研究者的文献发现工具，支持用自然语言发起检索、自动迭代查询、扩展候选论文、排序结果并导出可复核的文献列表。

HongMingfeng/PaperSeek 是 ModelScope 魔搭社区上的在线可交互 Demo（创空间），基于 docker 6.17.3 构建，中文名为「PaperSeek - 使用自然语言检索文献」。

- **Repository**: HongMingfeng/PaperSeek
- **SDK**: docker
- **SDK version**: 6.17.3
- **Downloads**: 0
- **Stars**: 9
- **Last updated**: 2026-06-23

Source: https://www.modelscope.cn/studios/HongMingfeng/PaperSeek

---

# PaperSeek ModelScope Studio

This repository is the ModelScope 创空间 deployment of PaperSeek. It is intentionally smaller than the main online edition:

- Login: ModelScope OAuth only.
- Runtime modes: ModelScope Service and Use your own API only.
- No Quick Start, daily free quota, email/password account flow, GitHub login, or account-binding UI.
- Search core: local self-contained `paperseek_core/`, kept in sync with the community and online editions.
- History: Supabase Auth + Supabase PostgreSQL history tables, scoped to the signed-in ModelScope user.

The public hosted service remains available at <https://www.paperseek.xyz/>. The Studio UI shows a banner pointing users there if the 创空间 service fails because of concurrency or platform limits, and links back to the open-source repository at <https://github.com/MingfengHong/paperseek>.

## Runtime Modes

### ModelScope Service

Users sign in with ModelScope. PaperSeek receives the current OAuth provider token from Supabase and uses that token for ModelScope API-Inference calls during the browser session.

- Model calls use the signed-in user's ModelScope API-Inference authorization and quota.
- OpenAlex uses the server-side PaperSeek OpenAlex key pool.
- Citation expansion stays enabled for OpenAlex.
- Model routing defaults to Automatic, with an optional custom ModelScope model ID.
- ModelScope API-Inference is a trial service without SLA guarantees; transient empty responses, quota limits, or upstream errors can occur.

### Use your own API

Users can run searches with their own model API key.

- Default provider is OpenAI.
- Anonymous OpenAlex searches must include the user's own OpenAlex API key.
- Signed-in ModelScope users can use the site OpenAlex key pool unless they enter their own source key.
- Keys entered in the browser are kept in the current browser session and are not stored by PaperSeek.

## Required Services

- Supabase project with Auth enabled.
- Supabase custom OAuth provider for ModelScope, usually `custom:modelscope`.
- Supabase migrations in `supabase/migrations/` applied to the target project.
- ModelScope 创空间 built from this Dockerfile.
- OpenAlex key pool set in the deployment environment.

## Environment Variables

Set these in the 创空间 environment:

```env
PAPERSEEK_EDITION=online
PAPERSEEK_REQUIRE_AUTH=true
PAPERSEEK_AUTH_PROVIDER=supabase
PAPERSEEK_MODELSCOPE_ONLY=true
PAPERSEEK_MODELSCOPE_OAUTH_ONLY=true
MODELSCOPE_SUPABASE_PROVIDER=custom:modelscope
MODELSCOPE_OAUTH_SCOPES=openid profile api-inference

SUPABASE_URL=
SUPABASE_PUBLISHABLE_KEY=
SUPABASE_SECRET_KEY=

OPENALEX_API_KEYS=

DATA_SOURCE=openalex
LLM_PROVIDER=openai
LLM_API_TYPE=openai_responses
LLM_MODEL=gpt-5.4-mini
LLM_BASE_URL=https://api.openai.com/v1

TARGET_MIN=5
TARGET_MAX=50
MAX_ITERATIONS=5
EXPAND_CITATIONS=true
FETCH_ABSTRACTS=false
CITATION_SEED_COUNT=3
CITATION_PER_SEED=4
CITATION_MAX_RECORDS=40
PAPERSEEK_HISTORY_ENABLED=true
PAPERSEEK_TIMEZONE=Asia/Shanghai
```

`MODELSCOPE_API_KEY` is used only for pushing code or managing the Studio through ModelScope APIs. It is not used by the app for ModelScope API-Inference calls. ModelScope Service requires `MODELSCOPE_OAUTH_SCOPES=openid profile api-inference`; the `api-inference` scope lets the signed-in user's provider token call API-Inference.

## Local Development

```powershell
python -m pytest -q
python app.py
```

Open the local URL and verify:

1. The top banner links to `https://www.paperseek.xyz/` and `https://github.com/MingfengHong/paperseek`.
2. The configuration section shows only ModelScope Service and Use your own API.
3. The account modal shows only Continue with ModelScope and sign out.
4. ModelScope Service rejects unauthenticated searches and accepts a signed-in ModelScope session with provider token.
5. Use your own API accepts user model keys and requires an OpenAlex key when anonymous.
6. History is visible only for the current signed-in ModelScope user.

## Deployment

The 创空间 repository can be cloned with:

```bash
git lfs install
git clone https://oauth2:<MODELSCOPE_API_KEY>@www.modelscope.cn/studios/HongMingfeng/PaperSeek.git
```

After updating files:

```bash
git add .
git commit -m "Sync PaperSeek ModelScope Studio edition"
git push
```

The Dockerfile runs FastAPI through Uvicorn on `${PORT:-7860}` and uses the ModelScope Python 3.10 base image.
