The peptiderive server attempts to find a minimal peptide which has most of the energy of a protein-protein interaction. It doesn’t create a peptide de novo, but rather reduces one partner in the complex to a peptide which attempts to preserve the binding energy. (see https://rosie.graylab.jhu.edu/peptiderive/documentation for more) As such, you need to have an input PDB which has at least two chains (such that peptiderive can reduce one side of the interaction to a peptide.) (Note, though, that you can manually edit your single-chain PDB into multiple chains, if for example you want to derive a peptide from a domain-domain interaction.)
I’m not sure which job you have which had errors, but if you’re getting an error about the protein only having only one chain despite having multiple chains, the thing I’d check is the chain lettering. Different chains should have different chain letters (not just be separated by TER cards), and those letter should match the partner designations which you specify on the submission screen. The other thing you might want to do is clean up the input PDB, editing the input structure to remove any waters, ligands or “other” chains which aren’t part of the interface which you’re deriving the peptides for.