103 lines
2.3 KiB
Markdown
103 lines
2.3 KiB
Markdown
# Paper Processor
|
|
|
|
Go package for automated evaluation of academic papers using LLM-based criteria
|
|
|
|
## Features
|
|
|
|
- Process multiple papers with configurable API settings
|
|
- Structured evaluation results (accepted/rejected)
|
|
- Rate limiting with request delay configuration
|
|
- File-based processing (JSON input/output)
|
|
- Customizable evaluation criteria
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
go get github.com/yourusername/paperprocessor
|
|
```
|
|
|
|
## Usage
|
|
|
|
### Basic Configuration
|
|
```go
|
|
import "github.com/yourusername/paperprocessor"
|
|
|
|
config := paperprocessor.Config{
|
|
APIEndpoint: "https://api.llm-provider.com/v1/chat/completions",
|
|
APIKey: "your-api-key",
|
|
Model: "llm-model-name",
|
|
RequestDelay: time.Second * 2,
|
|
}
|
|
```
|
|
|
|
### File Processing
|
|
```go
|
|
err := paperprocessor.ProcessFile(
|
|
"input/papers.json",
|
|
"output/results.json",
|
|
"criteria.txt",
|
|
config,
|
|
)
|
|
```
|
|
|
|
## Input Formats
|
|
|
|
### Papers JSON
|
|
```json
|
|
[
|
|
{
|
|
"title": "Paper Title",
|
|
"abstract": "Paper abstract text...",
|
|
"arxiv_id": "1234.56789"
|
|
}
|
|
]
|
|
```
|
|
|
|
### Criteria File
|
|
```
|
|
Evaluation criteria:
|
|
- Relevance to quantum computing
|
|
- Novelty of approach
|
|
- Technical rigor
|
|
```
|
|
|
|
## Output Example
|
|
```json
|
|
{
|
|
"accepted": [
|
|
{
|
|
"paper": {
|
|
"title": "Advanced Quantum Computing Methods",
|
|
"abstract": "...",
|
|
"arxiv_id": "2301.12345"
|
|
},
|
|
"decision": "ACCEPT",
|
|
"explanation": "Fulfills all criteria..."
|
|
}
|
|
],
|
|
"rejected": [
|
|
{
|
|
"paper": {
|
|
"title": "Basic Classical Algorithms",
|
|
"abstract": "...",
|
|
"arxiv_id": "2301.67890"
|
|
},
|
|
"decision": "REJECT",
|
|
"explanation": "Doesn't meet novelty requirements..."
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
## Configuration Options
|
|
|
|
| Parameter | Description | Default |
|
|
|-----------------|--------------------------------------|---------------|
|
|
| APIEndpoint | LLM API endpoint URL | Required |
|
|
| APIKey | API authentication key | Required |
|
|
| Model | LLM model name | Required |
|
|
| RequestDelay | Delay between API requests | 1 second |
|
|
|
|
## License
|
|
MIT
|